[yummyHitOS] 28 day (2017.08.25)
잊을만 하면 돌아오는 야-미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 vs Asymmetric
그렇다면 대칭(Symmetric)과 비대칭(Asymmetric)의 차이는 무엇이 있을까요? 앗 딱히 이번 챕터에서 진행할 내용이 책 이외에 없어서 그런거시 아니외다!! 흑흑 궁금해서 구냥...
대칭 | 비대칭 | |
---|---|---|
설명 | 각각의 프로세서가 OS 위에서 작업 수행 | 마스터 프로세서만 OS 위에서 작업 수행 |
과정(Process) | 각 레디큐 혹은 공통 레디큐에서 프로세스를 가져옴 | 마스터 프로세서가 직접 수행하거나 슬레이브 프로세서에 할당 |
아키텍쳐(Architecture) | 모두 같은 아키텍쳐만 가능 | 다른 아키텍쳐도 가능 |
통신 | 공유 메모리를 통해 다른 프로세서와 통신 | 마스터 프로세서에 의해 제어 |
위험도 | 다른 프로세서를 대체할 수 없음 | 마스터 프로세서가 고장나도 슬레이브 프로세서가 순차적으로 마스터 역할을 하기 때문에 대체 가능 |
유용성 | 부하 분산을 하기 위한 작업이 필요하므로 복잡한 구조를 가지고 있음 | 마스터 프로세서가 제어하므로 간단한 구조를 가지고 있음 |
비교된 표를 확인해보시면 조금 이해가 되시나요!? 대칭 I/O 모드로 전환되면, 각 프로세서가 마스터-슬레이브 관계가 아닌 공유메모리를 통해 통신하는 독립적인 작업을 수행하게 되며, 이는 OS 의 스케줄러에 의해 관리가 되겠죠!! OS 위에서 수행하기 때문에요!!
후욱후욱 IE에서 왜 업로드가 안대지.. 싶어서 사파리로 전환!! 그림을 보면 더 헷갈리실 것 같아서 표로 먼저 정리하고 그림을 이렇게 똬~ 보여드리는 거십니다 호호하하
정말 책에 설명이 자세히 되어있어서 뭐 부연 설명할 것이 없네요... 이번 포스팅 너무 짧은것 같지만,, 한승훈 선생님의 책이 완벽한걸 어쩌겠나욥 퍄퍄
시간 날 때 책 내용 요약으로 포스팅도 한 번 해야할텐뎀... 나태해진 야미에오 흑흑 개발이나 주구장창 하고싶드아 ㅜㅠㅜ
얼른 나태함을 탈피하고 자주 글쓰러 오도록 하겠습니다!! 충성충성 ^^7
P.S 이렇게 가긴 아쉬우니 다음 포스팅을 알찬 구성으로 돌아온다는 약속과 함께 묻고 더블로 가겠습니다!
고럼 여러분 건강하세욥!! 열공 쌉가능! ㅎㅇㅌ!!
Check out the yummyhit’s website for more info on who am i. If you have questions, you can ask them on E-mail.
댓글남기기