CS/운영체제 5

Chapter 5: CPU Scheduling

경희대학교 허선영 교수님의 운영체제 수업을 기반으로 정리한 글입니다.Preemptive & Nonpreemptive Scheduling1. Nonpreemptive: 기존 프로세스 내쫓지 않고, 종료 or 대기까지 기다림 2. Preemptive: 기존 프로세스 내쫓음-> race conditionScheduling Criteria+ CPU Utilization: CPU가 busy 유지하도록 100% 이용+ Throughput: 단위시간 동안 완료한 프로세스 개수-> 클수록 좋음 - Turnaround Time: process 생성부터 종료까지의 시간- Waiting Time: ready queuescheduling affects only- Response Time: CPU에 처음 할당되기까지의 시간 (..

CS/운영체제 2025.05.07

Chapter 4: Thread & Concurrency

경희대학교 허선영 교수님의 운영체제 수업을 기반으로 정리한 글입니다.Thread: 독자적인 실행 흐름-> 서로 다른 코드 동시 실행 가능하나, 코어당 하나의 thread가 돌아감 multithreaded processs의 경우, 너무 많은 함수 호출 시 overflow 가능성 더 높다. ※ heap: 프로그램이 전체적으로 관리 및 스레드 간 데이터 공유에도 필요, e.g., 한 스레드가 메모리 할당, 다른 스레드가 사용 Benefits1. Responsiveness (반응성)2. Resource Sharing3. Economy: thread switching lower overhead than context switching4. Scalability (확장성): multicore일 때 이점Thread -..

CS/운영체제 2025.05.06

Chapter 3: Processes

경희대학교 허선영 교수님의 운영체제 수업을 기반으로 정리한 글입니다.Process in MemoryProcess Address Space: 메모리 중 process가 사용하는 공간 -> 4가지 섹션stack: 함수의 local variable, return address 등 (e.g., main, add)heap: 동적 objectdata: 전역 변수 text: 코드 = 명령어 (read only)※ 전역 변수 따로 저장하는 이유: stack은 함수마다 공간 존재하지만, 전역 변수는 모든 함수가 접근 1. stack각각의 함수는 stack frame을 갖게 되고, 이 frame 내에서 해당 함수가 사용하는 local variables 저장됨-> 함수 호출/return에 따라 stack 크기 업/다운 2...

CS/운영체제 2025.05.04

Chapter 2: Operating System Structures

경희대학교 허선영 교수님의 운영체제 수업을 기반으로 정리한 글입니다.How Operating Systems Interact with Hardware?Interrupts: 전기적 신호로, OS HW interaction 방식Device Controller: 운영체제가 Device를 사용하려면 Device Controller(HW)를 통해야 함Device Driver(SW): Device Controller와 소통하기 위한 OS의 소프트웨어 모듈※ system bus: communication 통로Device Controller: interrupt를 만들어 내는 주체 CPU가 I/O Request를 I/O device에 보내면, I/O device는 해당 요청을 처리 후device 작업이 끝남음을 CPU에..

CS/운영체제 2025.05.04

Chapter 1: Introduction

경희대학교 허선영 교수님의 운영체제 수업을 기반으로 정리한 글입니다.Computer Architecture 101Von Neumann Architecture1. 메모리에 유저의 프로그램(data, instructions) 올림2. CPU는 이 올라간 프로그램 실행Storage Hierarchy※ nonvolatile memory: SSD / off-chip: main memoryMulti-core Processors※ Storage Main Memory CPU Process ManagementProcess1. Process State: state는 OS가 관리하며, 이를 통해 프로세스가 번갈아 가며 CPU 사용 (time sharing)admitted: 메모리 부족 시 승인 Xready: CPU 기다..

CS/운영체제 2025.05.04