일종의 소프트웨어(컴퓨터 하드웨어 윗단에 설치됨)컴퓨터 하드웨어와 각종 소프트웨어, 사용자를 연결해주는 계층좁은 의미의 운영체제(커널)운영체제의 핵심 부분. 메모리에 상주하는 부분넓은 의미의 운영체제커널 뿐 아니라 각종 주변 시스템 유틸리티(윈도우즈의 파일복사 프로그램
본격적으로 운영체제에 대한 학습을 시작하기 전 컴퓨터 하드웨어의 동작에 대해 학습하는 챕터I/O= Input/Output. I/O Device의 데이터가 Computer로 들어가는 것을 Input. Computer에서 I/O Device로 데이터를 내보내는 것을 Out
프로세스는 실행중인 프로그램이다.프로세스의 현재 상태를 나타내는 아래와 같은 것들을 프로세스의 문맥이라 한다. 프로세스들이 번갈아가며 실행되기때문에 프로세스의 문맥에 대한 백업을 필수이다.(시분할, 멀티태스킹 환경 등에서)CPU 수행 상태를 나타내는 하드웨어 문맥Pro
Copy-on-write(COW) 기법: 자식 프로세스가 부모 프로세스를 공유만 하고 있다고, 수정 사항이 생기면 해당 부분만 copy하는 기법(복제 생성이 아닌 방식)부모 프로세스가 자식 프로세스 생성(복제 생성)프로세스의 트리(계층 구조) 형성프로세스가 실행되기 위
I/O bound job(Interactive Job): CPU burst 시간이 짧은 프로그램의 종류(I/O 작업이 자주 끼어드는 경우. CPU를 짧게 자주 씀. 주로 사람과 Interaction을 많이 함)CPU bound job: CPU burst 시간이 긴 프로
공유 데이터의 동시 접근은 데이터 불일치 문제를 발생시킴데이터의 일관성을 유지하기 위해 협력 프로세스 간 실행 순서를 정해주는 메커니즘 필요Race Condition여러 프로세스들이 동시에 공유 데이터를 접근하는 상황데이터의 최종 연산 결과는 마지막에 그 데이터를 다룬
위 그림대로 차들이 무조건 진행방향으로만 나아가려고 한다면 진전이 없이 계속 막히게 될 것이다 이러한 상황을 Deadlock이라 한다.Deadlock일련의 프로세스들이 서로가 가진 자원(하드웨어, 소프트웨어 등을 포함하는 개념)을 기다리면 block된 상태ex) 시스템
Logical Address(Virtual Address)프로세스마다 독립적으로 가지는 주소 공간각 프로세스마다 0번지부터 시작CPU가 보는 주소는 logical addressPhysical Address메모리에 실제 올라가는 위치주소 바인딩주소를 결정하는 것Symbo
물리적인 메모리의 주소변환은 운영체제가 관여하지 않지만,virtual memory 기법은 운영체제가 전적으로 관여함실제로 필요할 때 page를 메모리에 올림(요청이 있으면 페이지를 메모리에 올림. 모든 페이지를 메모리에 올리는 것이 아닌) I/O 양 감소Memory 사