혼자 공부하는 컴퓨터 구조+운영체제

· 🛠️ OS
0. CPU 스케줄링 알고리즘의 종류 선입 선처리 스케줄링 최단 작업 우선 스케줄링 라운드 로빈 스케줄링 최소 잔여시간 우선 스케줄링 우선순위 스케줄링 다단계 큐 스케줄링 다단계 피드백 큐 스케줄링 1. 선입 선처리 스케줄링 = FCFS(First Come First Served) 스케줄링 단순히 준비 큐에 삽입된 순서대로 처리하는 비선점 스케줄링 먼저 CPU를 요청한 프로세스부터 CPU 할당 단점: 프로세스들이 기다리는 시간이 매우 길어질 수 있다는 부작용(=호위 효과) 실행시간이(17, 5, 2ms)인 프로세스들이 큐에 들어있을 때 2. 최단 작업 우선 스케줄링 = SJF (Short Job First) 스케줄링 호위효과를 방지함 CPU 사용이 긴 프로세스는 나중에 실행, CPU 사용 기간이 짧은 프..
· 🛠️ OS
CPU 스케줄링 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것 프로세스 우선순위 가장 공정한 CPU 스케줄링은 어떻게 하는 걸까? CPU를 사용하고 싶어하는 프로세스들이 차례로 돌아가며? NO. 빨리 처리해야하는 프로세스가 있기 때문(= 프로세스마다 우선순위가 다르기 때문) 예시로 입출력 작업이 많은 프로세스(=입출력 집중 프로세스)의 우선순위는 CPU작업이 많은 프로세스(=CPU 집중 프로세스)의 우선순위보다 높다 우선순위는 프로세스의 PCB에 저장됨 스케줄링 큐 모든 프로세스의 PCB를 뒤적거려 프로세스의 순서를 정하는 것 비효율적임 → 따라서 스케줄링 큐를 이용 자원이용하고 싶은 프로세스들을 큐에 삽입(줄을 서게 함) 스케줄링에서의 큐는 반드시 선입선출 방식일 필요는 없음 ..
· 🛠️ OS
스레드 프로세스를 구성하는 실행 흐름의 단위 하나의 프로세스는 하나 이상의 스레드를 가질 수 있다 스레드 종류 단일 스레드 프로세스 실행 흐름이 하나인 프로세스 멀티 스레드 프로세스 실행 흐름이 여러 개인 프로세스 → 프로세스를 이루는 여러 명령어 동시 실행 가능 스레드의 구성 요소 스레드 ID, 프로그램 카운터를 비롯한 레지스터 값, 스택 등 실행에 필요한 최소한의 정보 모든 스레드는 프로세스의 자원을 공유하면서 실행됨 멀티 프로세스와 멀티 스레드 동일한 작업을 수행하는 단일 스레드 프로세스 여러 개 실행: 멀티 프로세스 하나의 프로세스를 여러 스레드로 실행: 멀티 스레드 멀티 프로세스의 경우 프로세스를 fork하면 코드/데이터/힙 영역 등 모든 자원이 복제되어 저장됨 저장된 메모리 주소를 제외하면 모..
· 🛠️ OS
1. 운영체제란 실행할 프로그램에 필요한 자원을 할당하고 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램 커널 영역에 적재되어서 실행되는 프로그램 응용 프로그램: 사용자가 특정 목적을 위해 사용하는 일반적인 프로그램 2. 운영체제의 역할 메모리 관리 CPU 관리 CPU는 보통 여러 프로그램을 빠르게 돌아가면서 동시에 실행을 하게 되는데, 그 때 누가 먼저 실행될지, 나중에 실행될지, 누가 오래동안 CPU를 점유할지 결정하게 됨. 입출력 장치 관리 보조기억장치 관리 파일, 폴더 관련 정리하자면, 운영체제는 정부가 인력, 토지, 예산을 관리하는 것처럼 운영체제가 컴퓨터의 자원(CPU, 메모리, 하드 디스크 등)을 관리해줌 『혼자 공부하는 컴퓨터 구조+운영체제』 강의 내용을 기반으로 작성된 글입니다
JINiOS
'혼자 공부하는 컴퓨터 구조+운영체제' 태그의 글 목록 (2 Page)