OS - 04. File systems (1)

cs지식/운영체제 2022. 6. 28. 13:50

File Systems Requirements for long-term information storage 많은 양의 정보를 저장할 수 있어야한다. process가 종료되더라도 정보는 남아있어야한다(비휘발성) 다수의 process가 동시에 공유 혹은 접근할 수 있어야한다. File & File system File - 저장공간에 데이터 저장시 저장되는 가장 기본단위이다.(파일 단위로 저장한다) - byte들의 연속 (OS는 파일 안의 데이터는 관심없고 byte들의 연속이라 생각한다!) - 유저에 의해 하나의 단위(single entity)로 취급된다. - 유일한 path name을 가진다. - 접근 권한이 존재한다. File system 파일과 관련된 서비스를 유저에게 제공하는 system softwar..

Article Thumbnail
OS - 03. Memory Management

cs지식/운영체제 2022. 6. 28. 13:44

Address Space(주소 공간) Physical address space: 실제 하드웨어가 지원하는 주소공간 Logical address space: 프로세스가 자신의 메모리를 바라보는 관점에서의 주소 공간 프로세스는 메모리를 가상 메모리 공간으로, 즉 본인의 실제 물리 메모리 공간보다 더 크다고 생각한다! Address Generation 코드는 컴파일되어 어셈블리어로 번역된다. 이때 적재될 메모리 주소는 어디가 될지 모르므로 보통 0번지의 값을 가진다. 실제 메모리는 1000번지부터 적재되므로 jmp 175 코드는 실제 메모리의 175로 가면 안되고 1175로 가야 하므로 1175로 바꿔줘야 한다. Multiple Programs Without Memory Abstraction 단일 프로그램은 ..

Article Thumbnail
OS - 02. Processes and Threads (2)

cs지식/운영체제 2022. 6. 13. 03:51

Scheduling 다음에 실행할 프로세스 또는 쓰레드를 선택하는 과정 스케줄링 시점 프로세스가 생성될 때 프로세스가 종료할 때 프로세스가 I/O, Semaphore, 또는 다른 무언가로 대기할 때 I/O interrupt가 발생할 때 선점 스케줄링 알고리즘(preemptive scheduling)의 경우 Clock Interrupt가 발생할 때 스케줄링 오버헤드(문맥교환비용) 모드 변경 비용(사용자 > 커널 > 사용자) 프로세스 문맥 저장, 복구 메모리 맵 저장, 복구 CPU 캐시 무효화 기타 Process Behavior - 프로세스의 실행 형태 CPU-bound process : 한번실행하면 I/O요청 거의없이 계속 계산만 하는 프로세스. I/O-bound process : 잠깐 계산하고 I/..

Article Thumbnail
OS - 02. Processes and Threads (1)

cs지식/운영체제 2022. 6. 7. 16:46

Race Conditions - ProcessA와 B가 동시에 공유 메모리를 access(접근)하기 원하는 상태. 경쟁상황이 발생할 수 있고, 경쟁 결과에 따라 결과값이 변경될 수 있다. Critical Regions race condition을 피하기 위한 필요 조건 Mutual Exclusion : 상호배제, 동시에 임계구역에 들어갈 수 없도록한다. Progress : 임계 영역 밖에서 실행되는 어떠한 프로세스도 다른 프로세스를 차단할 수 없다. Bounded Waiting : 임계 영역에 들어가기 위해 영원히 기다리는 프로세스는 없도록 한다. 상호배제(Mutual Exclusion)를 구현하기 위한 제안 Disabling interrupts Lock variables Strict alternatio..

Article Thumbnail