1. Process Management 메모리에 로드된 사용자 프로그램 또는 메모리 관리와 운영체제 내부의 활동들을 위해 CPU를 사용하는 활동을 모두 프로세스라고 부른다. 프로그램은 명령어 리스트를 가진 실행 파일이며, 프로세스는 다음에 실행한 명령어인(progr
여태까지 하나의 프로세스는 하나의 제어 스레드를 가지고 프로그램을 실행한다고 가정했다. 그러나 거의 모든 현대의 운영체제는 한 프로세스가 여러 스레드를 포함하는 특성을 가진다. 1. Overview 스레드는 CPU이용의 기본 단위이다. 스레드는 스레드 ID, 프로그
협력적 프로세스에서 Shared Memmory로의 동시 접근은 데이터의 비일관성을 낳을 수 있다. 그래서 다양한 기법을 이용하여 데이터의 일관성을 유지해야 한다. 1. 배경 협력적 프로세스 혹은 스레드로 구성된 시스템에서 이들은 서로 비동기적으로 실행될 가능성이 있
동기화의 클래식한 문제들을 살펴 본다.
대기중인 프로세스들이 다시는 그 상태를 변경 할 수 없으면 이런 상황을 Deadlicks(교착 상태)라고 한다.
1. Background CPU는 Program Counter(레지스터)가 지시하는 대로 메모리로부터 다음 수행할 명령어를 가져오기 때문에 프로그램은 저장장치에서 메모리 혹은 레지스터로 적재되어야 실행될 수 있다. 메모리에 대한 고려사항은 레지스터와 메모리의 접근 속
가상 메모리는 프로세스 전체가 메모리내에 올라오지 않더라도 실행이 가능하도록 하는 기법이다. 1. Background 실행 중인 프로그램은 반드시 메모리에 적재되어야 사용할 수 있다는 타당한 요구조건으로 보이지만, 프로그램의 크기가 Physical Memory를 넘
비휘발성이고 컴퓨터의 보조기억장치로 사용된다. 주로 HDD를 예시로 들 수 있다. 1. 대용량 저장 장치 A. 하드 디스크 Platter = track + ... + track = Track 50K ~ 100K개 = 12.5 ~ 100GB Track = secto
1. Overview 컴퓨터의 두가지 주요 작업은 연산처리작업(processing)과 입출력 작업(I/O)이다. 입출력 장치는 갈수록 다양해지지만, 관련 인터페이스는 점점 표준화 되어 가고 있다. Device Driver(SW)는 모든 하드웨어를 일관된 인터페이스로
파일 시스템은 관련된 정보 자료를 저장하는 실제적인 파일들의 집합체와 시스템 내의 모든 파일에 관한 정보를 제공하는 디렉터리 구조로 구성된다.파일은 보조 기억 장치에 기록된 관련 정보의 집합으로 정의할 수 있다.파일은 사용자가 이름을 붙여서 만들고 그 이름으로 파일을
1. File-System Structure 입출력 효율을 향상 시키기 위해 메모리와 디스크간의 입출력 전송은 블록 단위로 수행된다. 각 블록은 하나 이상의 섹터이며 통상 512바이트이다. 파일 시스템의 계층적 구조 입출력 제어: 장치 드라이버 루틴들과 인터럽트