잊을만 하면 돌아오는 야-미desu!! 아아 벌써 2019년 한 해가 다 가네용... 벌써 2020년이라니 내나이는 아홉! 쑤! ㅜㅠㅜ젊은친구 신사답게 행동해야하는데 슬슬 젊지 못하는 것 같수비다...
호호 예전처럼 gif 에서 자막달기 힘들어가지구 imovie 로 달아버렸더니 고퀄이 된거시에오 퍄퍄
저의 요즘 근황은 페이스북에 분기마다 올리고는 있지만, 음 대충 이렇숩미다
1. 사내 네트워크 구성(라우팅) 및 서버 장비 엔지니어(고장났는데 왜 나보고 고쳐달라구 하님?)
2. 웹방화벽 EOL 장비 유지보수(이제 장비 철회할건디 왜 자꾸 수정해달라고 요청하님!?)
- apache 2.2(feat. apr 1.4.5) 소스 커스터마이징 및 모듈 제작, 버그 fixed it!
- 서버, 에이전트, 데이터베이스 담당(클라이언트 제외 전부)
3. 웹방화벽 프로모션 장비 리팩토링 및 유지보수
- apache 2.4(feat apr1.5.2) 소스 커스터마이징 및 모듈 제작, 버그 픽수
- 서버, 에이전트, 데이터베이스 담당(클라이언트 제외 전부)
- 서버 리팩토링
- 통신 프로토콜 재설계
4. 차세대 웹방화벽
- dpdk + seastar framework 를 통한 network stack 구현
- modern c++ on qt core without gui 로 통신 프로세스 구현
- 침입탐지 라이브러리 구현
- 데이터베이스 설계 및 담당
- 침입탐지 룰 제작 및 담당
뭐 이런 업무를 하면서 지내고 있숩미다 대체 뭐하는 잡부인지 모루게쒀여,, 참 어제 장성규님이 찍으시는 워크맨이라는 유튜브 채널을 보는데 ㅋㅋㅋㅋ으 너무 웃긴것이에오 딱 제취향 ㅜㅠ취저 대박이옵니다 선넘규!
본론으로 돌아와서,, 오랜만에 글쓰다보니 책이 어디있는지도 못찾아서 한참 찾았어요 하하하하 알고보니 아이맥으로 깔고있던것~ 역시 책은 받ㅊ
드디어 한승훈 선생님의 Mint OS 64bit 만들기의 제 1권 마지막 챕터예요!! 빰빰~~ 그동안 여러분 고생 많이하셨습니다!! 하지만 아직 중간도 안왔습니다!! 이제부터 재미난것의 시작이거든요!! 막 UI 그리고! 마우스 움직이고! 마! 그땐 나도 깡패가 되는ㄱ
ㅋㅋㅋㅋ요즘 아이언쥬래건님이 핫하셔서,, 변사체가 된다~
지난 챕터에서 Local APIC 를 통해 Multi-core 를 활성화 시켰으니, 이젠 BSP 만 동작하는 것이 아니므로 I/O APIC, Local APIC 를 이용해 모든 코어에서 인터럽트 처리를 수행할 수 있도록 하는 것이 이번 챕터의 역할입미다!!
그런데 이번 챕터는 인터럽트 부하분산을 하기 전에 선수작업을 하는 거라 챕터 30장이랑 이어지는게 맞았겠네유... 모지리 야미는 왜 29장-30장을 같이하고 31장을 따로하였을까유 흐미,,
새로운 명칭이 나왔어요! 대칭 I/O 모드라니! 인터럽트 부하 분산을 위해 들어온 인터럽트를 모든 코어에 전달하는 모드라고 해요! PIC 를 통하지 않고 APIC 만을 통한다니 기술의 발전이 고스란히 보이는 듯하군녀!!
* 참고로 지난 챕터에서 Multi-core 를 활성화 시켰으나, 인터럽트가 수행되는 과정이 그대로이면 말짱 도루묵입니다! 인터럽트가 수행된다는 것은 수행중인 Context 를 store - interrupt - load 작업을 하는 switch 작업이 수행되는 것인데, 이것이 분산되지 않으면 전체 프로세서에서 하나의 부하로 작용되어집니다. 3학년 1반에 재호와 경태와 세미와 민지가 있는데 왜 민지가 잘못한것에 대해 다혼나야하냐능!! 연대의식은 현대에 안맞는 정서 아니냐능!!
이러한 이유로 인터럽트에 대해 분산을 시켜주어야 잘못한 사람만 혼날 수 있는 뭐 그런 이유로 부하분산(Load Balancing)이란 너무도 중요한 기능입니다(인터럽트 외에도 트래픽면, 보안측면, 네트워크 라우팅 등의 면에서도 중요한 기능!)
그렇다면 대칭(Symmetric)과 비대칭(Asymmetric)의 차이는 무엇이 있을까요? 앗 딱히 이번 챕터에서 진행할 내용이 책 이외에 없어서 그런거시 아니외다!! 흑흑 궁금해서 구냥...
|
대칭 |
비대칭 |
설명 |
각각의 프로세서가 OS 위에서 작업 수행
|
마스터 프로세서만 OS 위에서 작업 수행 |
과정(Process) |
각 레디큐 혹은 공통 레디큐에서 프로세스를 가져옴
|
마스터 프로세서가 직접 수행하거나 슬레이브 프로세서에 할당 |
아키텍쳐(Architecture) |
모두 같은 아키텍쳐만 가능
|
다른 아키텍쳐도 가능 |
통신 |
공유 메모리를 통해 다른 프로세서와 통신
|
마스터 프로세서에 의해 제어 |
위험도 |
다른 프로세서를 대체할 수 없음
|
마스터 프로세서가 고장나도 슬레이브 프로세서가 순차적으로 마스터 역할을 하기 때문에 대체 가능 |
유용성 |
부하 분산을 하기 위한 작업이 필요하므로 복잡한 구조를 가지고 있음
|
마스터 프로세서가 제어하므로 간단한 구조를 가지고 있음 |
비교된 표를 확인해보시면 조금 이해가 되시나요!? 대칭 I/O 모드로 전환되면, 각 프로세서가 마스터-슬레이브 관계가 아닌 공유메모리를 통해 통신하는 독립적인 작업을 수행하게 되며, 이는 OS 의 스케줄러에 의해 관리가 되겠죠!! OS 위에서 수행하기 때문에요!!
후욱후욱 IE에서 왜 업로드가 안대지.. 싶어서 사파리로 전환!! 그림을 보면 더 헷갈리실 것 같아서 표로 먼저 정리하고 그림을 이렇게 똬~ 보여드리는 거십니다 호호하하
정말 책에 설명이 자세히 되어있어서 뭐 부연 설명할 것이 없네요... 이번 포스팅 너무 짧은것 같지만,, 한승훈 선생님의 책이 완벽한걸 어쩌겠나욥 퍄퍄
시간 날 때 책 내용 요약으로 포스팅도 한 번 해야할텐뎀... 나태해진 야미에오 흑흑 개발이나 주구장창 하고싶드아 ㅜㅠㅜ
얼른 나태함을 탈피하고 자주 글쓰러 오도록 하겠습니다!! 충성충성 ^^7
P.S 이렇게 가긴 아쉬우니 다음 포스팅을 알찬 구성으로 돌아온다는 약속과 함께 묻고 더블로 가겠습니다!
고럼 여러분 건강하세욥!! 열공 쌉가능! ㅎㅇㅌ!!
'yummyHitOS - Making OS' 카테고리의 다른 글
[yummyHitOS] 만들기 (27일차/17.08.19/스압주의) (2) | 2019.05.01 |
---|---|
[yummyHitOS] 만들기 (26일차/17.08.16/약스압주의) (0) | 2019.01.04 |
[yummyHitOS] 만들기 (25일차/17.08.15/약스압주의) (0) | 2018.11.28 |
[yummyHitOS] 만들기 (24일차/17.08.14/약스압주의) (2) | 2018.03.05 |
[yummyHitOS] 만들기 (23일차/17.08.09/약스압주의) (0) | 2017.12.11 |