[OS 개발 1] 첫 시작
운영체제(Operating System, OS) 만들기에 앞서
그 동안 프로그래밍을 공부하면서 운영체제에 대해서도 계속 공부해야겠다는 생각을 가지고 있었지만 그러지 못했습니다. 이제는 험난했던 대학원 생활도 끝났고 입사를 앞둔 상황에서 OS를 꼭 공부하고, 특히 블로그를 통해 그 과정을 정리하기로 했습니다. 그런데 막상 시작하려고 하니 어디서부터 손을 대야 하나 감을 잡지 못했죠.
'무조건 책부터 사야하나?'
'다들 구글링을 하던데 구글 검색만으로도 OS 공부가 가능할까?'
그 시작 방법조차 여의치 않아서 OS 처음 공부 방법을 좀 찾아봤더니 OS를 직접만들고 이를 공유하는 사람들이 꽤 있다는 사실을 알아챘습니다. 나는 왜 그 동안 OS를 직접 만들어볼 생각을 못했는지,,
그런데 그 블로거들의 공통점은 대부분이 한 가지 책을 공부하면서 포스팅했다는 점이었습니다.
(김범준 저, 책 광고 아님)
2006년에 출간되었는데, 검색해보니 당시 IT 서적 베스트셀러에도 등극한 엄청난 책입니다. 평도 무려 8.8점대고, 그만큼 네티즌 평도 좋은 편이네요. 이미 IT 블로거들 사이에서도 꽤나 유명한 책입니다. 아쉬운 건 절판되었다는 점인데, 지금 중고로 매물이 있긴 한데 대부분이 원가의 50% 이상을 더 받고 판매하는걸로 보입니다.
아무튼 글의 논점이 잠시 벗어났는데, 이 책과 다수의 블로그를 참고하여 OS에 대해 공부하면서 정리하고, 이를 많은 사람들과 공유하고자 합니다. 많은 블로거들이 이미 OS를 제작하고 이에 대해 잘 정리해 뒀지만, 개인적으로는 좀 혼란스럽고 정리가 잘 안된 모습도 일부 보였습니다. 따라서 이번 포스팅을 시작으로 저 나름대로 진행 과정에서 OS 구조에 대해 정리해 보고자 합니다.
'OperatingSystem > Creating OS' 카테고리의 다른 글
[OS 개발 11] 인터럽트와 예외처리(1) IDT의 개념 (0) | 2016.02.11 |
---|---|
[OS 개발 10] 32비트 커널 로더(4) - 커널 구현과 분석 (3) | 2016.02.10 |
[OS 개발 9] 32비트 커널 로더(3) - GDT의 개념과 적용 (0) | 2016.02.06 |
[OS 개발 8] 32비트 커널 로더(2) - 리얼 모드와 보호 모드 (0) | 2016.02.05 |
[OS 개발 7] 32비트 커널 로더(1) - 커널과 디스크 구조 (0) | 2016.02.05 |
[OS 개발 6] 레지스터 세그먼트와 오프셋 개념 (0) | 2016.02.03 |
[OS 개발 5] 부트로더의 개념 및 제작, 실행, 분석 (4) | 2016.02.03 |
[OS 개발 4] 준비 단계(3) - 부트스트랩 과정 (0) | 2016.02.03 |
[OS 개발 3] 준비 단계(2) - 레지스터와 어셈블리 명령 체계 (0) | 2016.02.02 |
[OS 개발 2] 준비 단계(1) - 제작 환경 구축 (1) | 2016.02.02 |