Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.실행 중인 프로그램이 하는 일은 간단히 말하면 명령어를 실행하는 것이다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.프로세스는 실행 중인 프로그램이다
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. OS에서 제공하는 어떤 인터페이스들이 프로세스를 생성하고 제어할 수 있을까?
프로세스는 부모로부터 자식이 만들어지는, 트리 형태의 계층 구조를 이루고 있습니다.부모 프로세스로부터 자식 프로세스들을 생성해보고, 각 프로세스의 진행은 어떻게 이루어지는지 확인해봅시다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. CPU를 가상화하기 위해 OS는 동시에 돌아가는 여러 작업들이 물리적인 CPU를 공유하도록 해야한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. OS 스케줄러가 사용하는 높은 수준의 정책들에 대해서 이해해보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.Multi-level Feedback Queue(MLFQ)에서 해결되어야 하는 과제는 두 가지다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.이번 장에서는 비례 배분(proportional-share) 스케줄러라 부르는 다른 종류의 스케줄러에 대해서 공부한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.멀티코어 프로세서가 발전함에 따라 멀티프로세서 시스템은 점점 흔해지고 있는데, 이에 따라 단일 CPU를 사용할 때는 발생하지 않았던 여러 문제들도 발생했다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.메모리의 측면에서 초기의 컴퓨터들은 사용자에게 추상화를 많이 제공하지는 않았다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 이번 장에서는 UNIX 시스템의 메모리 할당 인터페이스들에 대해 논의한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. CPU를 가상화 할 때와 마찬가지로, 메모리를 가상화할 때도 효율성과 제어권을 얻으면서 가상화를 제공해야한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.베이스-바운드 방식을 사용했을 때 프로세스에 할당된 힙과 스택 메모리 사이에 사용되지 않는 공간이 있음을 보았다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 이번 장에서는 가용 공간 관리를 둘러싼 이슈들에 대해 논의한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.OS는 공간 할당 문제를 해결하기 위해 두 가지의 접근법을 사용한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.페이징은 주소 공간을 작고 고정된 사이즈의 단위로 나누기 때문에 많은 양의 매핑 정보를 필요로 한다.
Operating System : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 페이지 테이블은 너무 크고 메모리를 너무 많이 잡아 먹는다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 지금까지는 물리 메모리에 딱 들어맞는, 비현실적으로 작은 물리 공간만을 가정했다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 메모리가 거의 남아 있지 않은 경우, 이 메모리 압력은 OS가 실행될 페이지를 위한 공간을 만들도록 페이지들을 디스크로 쫓아내게 만든다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 완전한 가상 메모리 시스템을 실현하기 위해서는 어떤 기능들이 필요할까? 이 기능들은 어떻게 성능을 향상시키고, 보안성을 높이고, 시스템을 개선할까?
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.다른 현재 OS들처럼 리눅스 가상 주소 공간도 유저 부분과 커널 부분으로 이루어져있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 지금까지는 단일 실행 지점만을 가지는 프로그램들만을 생각해왔지만, 멀티-스레드 프로그램은 하나 이상의 실행 지점을 가질 수 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.멀티-스레드 프로그램을 만들기 위해서 가장 먼저 할 수 있어야 하는 일은 새로운 스레드들을 만드는 것이다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 락 구현에 대해 알아보기 전에, 우선 고려해야 할 것들에 대해 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.상호 배제를 제공하기 위한 초기의 해결법들 중 하나는 임계 영역에서의 인터럽트를 비활성화하는 것이었다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.몇몇 시스템들이 제공하는 하드웨어 기초 연산은 compare-and-swap, 또는 compare-and-exchange라 불리는 명령어다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.앞서의 하드웨어 기반 락들은 간단하고 작동도 잘하지만, 이 해결법들은 어떤 경우, 너무 비효율적이게 될 수 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.락에 대한 내용을 끝내기 전에, 흔히 사용하는 자료 구조들에서 락을 어떻게 사용하는지에 대해 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.지금까지 락의 개념 및 어떻게 하드웨어와 OS 지원의 조합으로 락을 만드는지에 대해서 공부했다. 하지만 락만이 병행적 프로그램들을 만드는 데에 필요한 것은 아니다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 동기화를 위해 사용할 수 있는 다른 기법 중 하나인 세마포어에 대해서 배워본다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.다른 고전적인 문제는 더 유연하고, 다양한 자료 구조 접근을 위한 여러 종류의 락에 대한 필요성에 기반한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.지금까지는 병행 프로그램을 만드는 유일한 방법이 스레드를 이용하는 것 뿐인 것처럼 이야기 해왔지만, 사실 그렇지는 않다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.이번 파트에 들어가기 전에 우선 입출력 장치의 개념에 대해 소개하고 어떻게 OS가 그것과 상호작용하는지에 대해 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.이번 장에서는 하드 디스크 드라이브에 대해 더 자세히 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.이 장에서는 더 빠르고, 크고, 신뢰성 있는 디스크 시스템을 구성하기 위해 다수의 디스크들을 함께 사용하는 테크닉인 RAID를 소개한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 스트라이핑 다음의 첫 번째 RAID 레벨은 RAID 레벨 1, 또는 미러링이라 불린다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 여기에서는 영구 저장소(persistent storage)에 대해서 알아본다. 하드 디스크 드라이브나 SSD 같은 영구 저장 장치는 정보를 영구적으로 저장한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.대부분의 경우 파일 디스크립터는 open file table에 일대일 매핑된다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.디렉토리와 관련한 시스템 콜을 통해 디렉토리를 만들고, 읽고, 삭제할 수 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.이 장에서는 vsfs(Very Simple File System)이라 불리는 간단한 파일 시스템 구현을 소개한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.UNIX 운영체제가 처음 도입되었을 때 만들어진 파일 시스템이 있다. 이것을 "오래된 UNIX 파일 시스템"이라 부르자. 이 시스템은 아주 단순했다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 전원 손실과 충돌 때문에 영구적 자료 구조의 업데이트는 상당히 까다로워질 수 있다. 이는 충돌-일관성 문제로 이어진다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 지금까지의 기본 프로토콜을 이용하는 경우 추가적인 디스크 트래픽이 발생할 수 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.90년대 초반 버클리에서 로그-기반 파일 시스템이 개발되었는데, 다음과 같은 관찰들에 기반한다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.(OSTEP의 44장 Flash-based SSDs는 스킵합니다) 이 장에서는 다시 데이터의 신뢰성에 대해 다룹니다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.현대 웹 서비스에 접속한다는 것은 하나의 기기와의 상호 작용만이 아니라, 해당 서비스를 제공하기 위해 협력하는 수많은 기기들로 이루어진 서비스를 이용하는 것이다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 클라이언트/서버 구조의 분산 파일 시스템의 대표적인 예인 NFS에 대해 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.Andrew File System은 1980년대 카네기 멜런 대학교에서 만들어진 것으로, 그 주 목적은 확장에 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.컴퓨터 시스템에서의 보안은 갈 수록 더 중요해지고 있고, 컴퓨터 시스템의 구성 요소들은 모두 공격의 대상이 될 수 있다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다.넓은 범위의 보안 목표 및 보안 정책들을 다뤄야 한다면, OS에는 어떤 것이 필요할까?
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 우리는 어떤 시스템 자원, 혹은 서비스가 누구에게, 어떤 환경에서 접근될 수 있는지를 결정해야 한다. 이러한 결정은 어떻게 만들어질 수 있을까?
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 이전 장들에서 보안 목표, 보안 정책, 인증 및 인가에 대해서 배웠지만, 이것들만으로는 충분하지 않다.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. 이제는 이 암호화를 OS를 보호하는 데 어떻게 사용할 수 있을지에 대해 알아보자.
Operating Systems : Three Easy Pieces를 보고 번역 및 정리한 내용들입니다. OS는 자신이 설치된 컴퓨터의 자원들만 제어할 수 있다. 그렇기 때문에 OS를 통해 여러 기기들이 협업해야 하는 분산 시스템에서의 보안을 제공하는 일은 어렵다.