목록운영체제/쉽게 배우는 운영체제 (6)
yoooniverse
연습문제 1. 시스템 내 전체 프로세스의 수를 조절하는 것으로, 장기 스케줄링 또는 작업 스케줄링이라 불리는 스케줄링 수준은? 고수준 스케줄링 2. 어떤 프로세스에 CPU를 할당하고 어떤 프로세스를 대기 상태로 보낼지 등을 결정하는 스케줄링 수준은 무엇인가? 저수준 스케줄링 3. 어떤 프로세스가 CPU를 할당받아 실행 중이더라도 운영체제가 CPU를 강제로 빼앗을 수 있는 스케줄링은? 선점형 스케줄링 4. 현재 입출력을 진행하는 프로세스로, 사용자와 상호작용이 가능하여 상호작용 프로세스라고도 불리는 것은? 전면 프로세스 5. 준비 큐에 도착한 순서대로 CPU를 할당하는 비선점형 스케줄링 알고리즘은? FCFS 스케줄링 6. 준비 큐에 있는 프로세스 중 실행 시간이 가장 짧은 작업부터 CPU를 할당하는 비선점..
03 다중 큐 준비 상태의 다중 큐 각 프로세스는 자신의 pcb에 우선순위 정보를 포함한다. 준비 상태에 있는 프로세스들은 실행 상태로 넘어가기 전까지 큐에 순서대로 대기하는데, 우선순위 파악과 스케줄링의 효율성 제고를 위해 우선순위별로 큐를 구성한다. (다중 큐, multiple queue) 프로세스의 우선순위를 배정하는 방식 고정 우선순위 방식(static priority) : 운영체제가 프로세스에 부여한 우선순위가 프로세스 작업이 끝날 때까지 변하지 않음. 구현하기 쉬우나, 고정된 우선순위로 인해 시스템의 변화에 대응하기 어렵다는 단점 존재. 변동 우선순위 방식(dynamic priority) : 프로세스 작업 중간에 우선순위가 변하는 방식. 구현의 어려움은 있으나 시스템 효율성 제고에는 도움이 된..
01 스케줄링의 개요 스케줄링이란? 여러 프로세스의 상황을 고려하여 CPU와 시스템 자원을 어떻게 배정할지 결정하는 일 CPU 스케줄링의 종류 (1) 고수준 스케줄링(high level) / 장기 스케줄링(long-term) / 작업 스케줄링(job) 프로세스의 활성화 여부 컨트롤하여 시스템 내의 전체 작업 수를 조절하는 것 전체 시스템의 부하를 고려, 시스템 내에서 동시에 실행 가능한 프로세스의 총개수가 정해짐. (작업 : 운영체제에서 다루는 일의 가장 큰 단위. 1개 또는 여러 개의 프로세스로 이루어짐) "degree of multiprogramming" : 시스템의 전체 프로세스 수 (2) 저수준 스케줄링(low level) / 단기 스케줄링(short-term) 프로세스의 상태를 미세하게 조절하는..
3장 요약 #1 프로그램, 프로세스 프로그램 : 저장장치에 저장되어 있는 정적인 상태, 프로세스 : 실행을 위해 메모리에 올라와 있는 동적인 상태 #2 프로세스 상태의 구분 생성 상태 : 프로그램을 메모리로 가져왔고, 실행 준비가 완료된 상태 준비 상태 : 실행을 기다리는 프로세스가 자신의 차례가 오기를 기다리는 상태. 자신의 차례가 되면 CPU스케줄러가 선택해서 CPU로 데려감 실행 상태 : CPU를 사용하고 있는 상태. 이 때 CPU로부터 타임 슬라이스를 얻는다. 프로세스 간 문맥 교환이 일어나면 CPU를 사용하는 프로세스가 바뀌는 것. 대기 상태 : 실행 상태의 프로세스가 입출력을 요청했을 때, 입출력이 완료될 때까지 기다리는 상태를 이름. 입출력이 완료되면 준비 상태로 감. 완료 상태 : 프로세스..
2장 요약 #1 하드웨어의 구성 컴퓨터의 구성 : CPU, 메인메모리, 입력장치, 출력장치, 저장장치 필수장치 - CPU, 메인메모리 / 주변장치 - 필수장치를 제외한 구성품 #2 폰노이만 구조 : CPU, 메모리, 입출력장치, 저장장치가 버스로 연결되어 있는 구조 모든 프로그램이 메모리에 올라와야 실행이 가능 #3 CPU 명령어를 해석하여 실행하는 장치 구성 : 산술논리 연산장치, 제어장치, 레지스터 #4 메모리 실행에 필요한 프로그램과 데이터를 저장하는 공간 모든 프로그램은 메모리에 올라와야 실행 가능 메모리의 구분 ) 램 : 읽고 쓰기 가능 / 롬 : 읽기만 가능 #5 부팅 : 운영체제를 메모리에 올리는 과정 사용자가 컴퓨터의 전원을 켜면 ➡️ 롬에 저장된 바이오스가 실행되어 하드웨어 점검 ➡️ 메..
단답 1. 사용자에게 편리한 인터페이스 환경을 제공하고 컴퓨터 시스템의 자원을 효율적으로 관리하는 소프트웨어 운영체제 2. 가전제품과 같이 CPU의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제 임베디드 운영체제 3. 사용자가 원하는 기능을 수행하기 위해 컴퓨터 자원을 사용하는 소프트웨어 응용프로그램 4. 운영체제가 없는 컴퓨터에서는 어떤 문제가 발생하는가 초기 설정된 기능에서 해당 기능의 추가 및 향상이 어려움 5. 기계와 사용자 사이에 명령을 전달하고 처리한 결과를 알려주는 것 인터페이스 6. 프로그램과 데이터를 한 번에 입력한 후 작업의 최종 결과만 얻는 운영체제 방식 일괄작업 방식(batch job system) 7. 프로그램이 진행되는 도중에 사용자로부터 데이터를 입력받아 프..