[운영체제 OS] 디스크 관리 및 스케줄링 Disk
·
CS/운영체제 OS
Github Repo: pythonstrup 1. Disk 1-1. Disk Structure Logical Block 디스크의 외부에서 바라보는 디스크의 단위 정보 저장 공간들 주소를 가진 1차원 배열처럼 취급 정보를 전송하는 최소 단위 Sector Logical Block이 물리적 디스크에 매핑된 위치 디스크를 관리하는 최소의 단위 Sector 0은 최외곽 실린더의 첫 트랙에 있는 첫 번째 섹터이다. 부팅과 관련된 정보가 저장되어 있다. Sector에서 데이터를 읽고 쓰는 요청은 Disk Controller가 직접 조작 1-2. Disk Management Physical Formatting (Low-level Formatting) 디스크를 컨트롤러가 읽고 쓸 수 있도록 sector들로 나누는 과정 ..
[운영체제 OS] 파일 시스템 구현 File System Implementations
·
CS/운영체제 OS
Github Repo: pythonstrup 11 파일 시스템 구현 File System Implementations 목차 Allocation of File Data in Disk 1-1. 연속 할당 Contiguous Allocation 1-2. 링크 연결 할당 Linked Allocation 1-3. 인덱스 할당 Indexed Allocation Allocation의 구현 2-1. Unix 파일 시스템 2-2. Fat 파일 시스템 구조 Free Space Management 3-1. Bit Map (Bit Vector) 3-2. 연결 리스트 Linked List 3-3. Grouping 3-4. Counting 디렉토리 구현 Directory Implementation 디렉토리 구조 Directory..
[운영체제 OS] 파일 시스템 File System
·
CS/운영체제 OS
Github Repo: pythonstrup 10 파일 시스템 File System 목차 파일 시스템의 개념 1-1. 파일과 파일 시스템 1-2. 디렉토리와 파티션 1-3. 파일 보호 File Protection 1-4. Mounting Access Method 2-1. 순차 접근 Sequential Access 2-2. 직접 접근 Direct Access (Random Access) 2-3. 색인 접근 Index Access 1. 파일 시스템의 개념 1-1. 파일과 파일 시스템 A named collection of related information 파일(File)은 저장 단위이며, 관련된 정보 자료들의 집합에 이름을 붙인 것이다. 일반적으로 레코드(Record) 혹은 블록(Block) 단위로 비휘발..
[운영체제 OS] 메모리 관리 Memory Management
·
CS/운영체제 OS
Github Repo: pythonstrup 08 메모리 관리 Memory Management 목차 주소 Address 1-1. 주소의 종류 1-2. 주소 바인딩 address binding 메모리 관리와 관련한 용어 2-1. 동적 로딩 Dynamic Loading 2-2. 동적 연결 Dynamic Linking 2-3. 중첩 Overlays 2-4. Swapping 물리적 메모리의 관리 Allocation of Physical Memory 3-1. 물리적 메모리의 할당 방식 3-2. 연속 할당 Contiguous Allocation 3-3. 불연속 할당 Noncontiguous Allocation 불연속 할당의 기법 4-1. 페이징 Paging 4-2. 계층적 페이징 Multilevel Paging 4..
[운영체제 OS] 교착 상태 Deadlock
·
CS/운영체제 OS
Github Repo: pythonstrup 07 교착 상태 Deadlock 목차 Deadlock 1-1. 교착 상태란? 1-2. Deadlock 발생의 4가지 조건 Deadlock의 처리 방법 2-1. Deadlock Prevention 2-2. Deadlock Avoidance 2-3. Deadlock Detection and Recovery 2-4. Deadlock Ignorance 1. Deadlock - Traffic deadlock picture from [Reddit](https://www.reddit.com/r/pics/comments/6qulze/traffic_deadlock/) 1-1. 교착 상태란? Deadlock이란 일련의 프로세스들이 서로가 가진 자원을 기다리면 block된 상태를..
[운영체제 OS] 프로세스 동기화 Process Synchronization
·
CS/운영체제 OS
Github Repo: pythonstrup 06 프로세스 동기화 Process Synchronization 목차 데이터와 프로세스 1-1. 데이터의 접근 1-2. Race Condition 1-3. Process Synchronization Problem 동기화 알고리즘 2-1. 알고리즘1 2-2. 알고리즘2 2-3. 알고리즘3 동기화 하드웨어 세마포어 4-1. Semaphores 적용 4-2. Block & Wakeup 4-3. 교착과 기아 고전적인 동기화 문제 5-1. Bounded Buffer Problem 5-2. Readers & Writers Problem 5-3. 식사하는 철학자 문제 Monitor 6-1. Monitor의 개념 6-2. Bounded Buffer Problem 6-3. 식..