관리 메뉴

밤색모자이크의 개발이야기

운영체제 아주 쉬운 세 가지 이야기 - Andrea C. Arpaci-dusseau 저 본문

책 리뷰/Computer Science

운영체제 아주 쉬운 세 가지 이야기 - Andrea C. Arpaci-dusseau 저

밤색모자이크 2018. 3. 9. 21:59

안녕하세요. 밤색모자이크입니다.

이번엔 운영체제 관련 이론서 중에서 재밌게 읽은 책을 포스팅하려 합니다.

책이름은 '운영체제 아주 쉬운 세가지 이야기'이고 원제목은 'Operating Systems : Three Easy Pieces'입니다.

정말 쉽게 쓰여져 있기도 하고, 개인적으로 정리가 참 잘된 책이라고 생각합니다.

자세한 리뷰는 아래에서 하겠습니다.




책 표지

[출처 : 알라딘 제공]



기본 정보


도서명 : 운영체제 아주 쉬운 세 가지 이야기

정가 : 33,000원

저자 : Andrea C. Arpaci-dusseau, Remzi H. Arpaci-Dusseau

옮김 : 원유집, 박민규, 이성진

출판사 : 홍릉과학출판사


출판사 서평


아주 쉬운 세가지 이야기란 이 책의 구성에 근간이 되는 세 가지 주요 개념,

가상화(virtualization), 병행성(concurrency), 및 영속성(persistence)을 말한다.

이 세가지 개념을 통해 운영체제의 중요 기능에 논의 하며, 또한 재미를 느끼길 바란다.

이 주요 개념은 여러장에 걸쳐 설명되고. 대부분의 장에서 먼저 특정 문제를 제시하고 해결책을 제시한다.

Atlas의 reference bit, Hoare의 컨디션 변수 등 다양한 주제에 대해, 아이디어의 학문적 태동에서

현대 시스템에서 구현된 사례에 이르기까지의 거대한 스펙트럼을 군더더기없이 설명하고 있다.

운영체제는 하드웨어와 소프트웨어가 만나는 지점이다. 찬공기와 더운공기가 만나는 곳,

난류와 한류가 만나는 곳에서는 예외없이 엄청난 엔트로피를 가진 무질서와 혼돈이 존재한다.

무질서와 혼돈 속에 존재하는 규칙을 찾아내서, 그 규칙의 아름다움과 질서를 정제하여 전달하는 것이

운영체제 교과서의 역할이다. 이 책은 그 역할을 부족함 없이 잘 해내었다.


네이버 도서 링크

http://book.naver.com/bookdb/book_detail.nhn?bid=11823378





개인 리뷰


개인 평점 : ★★★★★


이 책의 제일 큰 장점은 깔끔하게 정리한 것입니다.

논점을 크게 가상화, 병행성, 영속성 이렇게 3가지로 정리했습니다.

사실 일반적인 운영체제 이론서들은 이런식으로 정리하지는 않습니다. 보통 프로세스, 파일 시스템, 메모리, 스케줄러 등등으로 단원을 따로따로 보는게 일반적이죠.


물론, 다른 책에서 다루는 것을 안 다루는게 아니라 다른 방식으로 접근한다고 생각하면 좋겠습니다.

크게 가상화에 대해서 이야기를 한 후

가상화가 무엇인지,

컴퓨터 공학에서 말하는 가상화는 어떤 것인지,

이런 가상화들이 OS 어디에 적용이 되는지,

왜 적용되어야 하는지

이런 식으로 접근하면서 근본적으로 OS가 어떻게 설계되게 되었고 OS 공부할 때, 중요한게 무엇인지 알려줍니다.


개인적으로 정말 재밌게 읽었습니다.

제가 읽은 운영체제 관련 이론서 중에서는 탑이라고 생각합니다.

예제도 어렵지않게 작성되었습니다.


이 책은 PDF가 무료로 제공됩니다. 물론 원서입니다.


http://pages.cs.wisc.edu/~remzi/OSTEP/


위 링크로 들어가시면 각 챕터별로 무료로 볼 수 있습니다.

사이트에 다른 기능들도 있는거 같은데 확인해보지는 않았습니다.


각 단원의 처음과 끝에 교수님과의 대화가 있는데, 같은 예제로 각 단원을 비교 설명합니다. 외국 특유의 유머가 있는건지 모르겠지만 개인적으로 약간 읽기가 좀 부끄러운 어투라서 자주 넘어갔습니다.

제가 이 책에서 유일하게 단점이라고 생각하는 부분입니다.


이 외는 단점이 없는 좋은 책입니다. 번역서의 한계라서 중간 중간 어색한 부분이 있지만 정말 번역이 잘된 책 중 하나라고 생각합니다.

그리고 위 사이트에서 원문을 제공해주니 의심이 되는 부분이 있다면 바로 확인하시면 됩니다.


OS에 대해서 기본적으로 알고 싶으신 분들에게 정말 추천드리는 서적입니다.

출판한지 사실 얼마되지도 않아서 국내에서는 모르시는 분들도 많을거같습니다.

처음으로 OS에 대해 공부하실 분들이라면 이 책을 처음으로 하시면 다른 책들도 무리없이 읽을 수 있을 거같네요.




책 상세 정보


목차

제1장 이 책에 관한 대화 
제2장 운영체제 개요 

제Ⅰ편 가상화 
제3장 가상화에 관한 대화 
제4장 프로세스의 개념 
제5장 막간: 프로레스 API 
제6장 제한적 직접 실행 원리 
제7장 스케줄링: 개요 
제8장 스케줄링: 멀티 레벨 피드백 큐 
제9장 스케줄링: 비례 배분 
제10장 멀티프로세서 스케줄링(고급) 
제11장 CPU 가상화에 관한 마무리 대화 
제12장 메모리 가상화에 관한 대화 
제13장 주소 공간의 개념 
제14장 막간: 메모리 관리 API 
제15장 주소 변환의 원리 
제16장 세그멘테이션 
제17장 빈 공간 관리 
제18장 페이징: 개요 
제19장 페이징: 더 빠른 변환(TLB) 
제20장 페이징: 더 작은 테이블 
제21장 물리 메모리 크기의 극복: 메커니즘 
제22장 물리 메모리 크기의 극복: 정책 
제23장 VAX/VMS 가상 메모리 시스템 
제24장 메모리 가상화를 정리하는 대화 

제Ⅱ편 병행성 
제25장 병행성과 관한 대화 
제26장 병행성: 개요 
제27장 막간: 쓰레드 API 
제28장 락 
제29장 락 기반의 병행 자료 구조 
제30장 컨디션 변수 
제31장 세마포어 
제32장 병행성 관련 오류 
제33장 이벤트 기반의 병행성(고급) 
제34장 병행성을 정리하는 대화 

제Ⅲ편 영속성 
제35장 영속성에 관한 대화 
제36장 I/O장치 
제37장 하드 디스크 드라이브 
제38장 Redundant Array of Inexpensive Disk(RAID) 
제39장 막간: 파일과 디렉터리 
제40장 파일 시스템 구현 
제41장 지역성과 Fast File System 
제42장 크래시 일관성: FSCK와 저널링 
제43장 로그 기반 파일 시스템 
제44장 데이터 무결성과 보호 
제45장 영속성을 정리하는 대화 
제46장 분산에 관한 대화 
제47장 분산 시스템 
제48장 Sun사의 네트워크 파일 시스템(NFS) 
제49장 Andrew 파일 시스템(AFS) 
제50장 분산을 정리하는 대화



[출처 : 예스24 제공]


저자 소개

제공되는 사이트 없음





Comments