본문 바로가기

분류 전체보기100

[CS] 쉽게 배우는 운영체제 Chapter03 #1 이 문서는 유튜브 '널널한 개발자 TV'님의 강의를 토대로 작성되었습니다. 프로세스 스케줄링에서 부족한 학습을 위해서 키워드를 추가 학습하여 정리했다. Context Switching 프로세스 큐에서 구별해야 할 3가지의 상태가 있다. 1. Ready-Queue : 자원을 사용하기위해 대기열에서 기다리는 상태 2. Sleep(ms) : 자발적으로 ms 시간만큼 대기열(ready-queue)에서 이탈하고 Queue에 합류. 3. Suspend : 타의적으로 대기열(ready-queue)에서 이탈됨 - swap 시점 - 오류로 인해서 프로세스가 죽었을 때 - 등등 의 이유로 suspend상태가 된다. 프로세스가 중단된 이후 다시 흐름을 이어가기 위해서 필요한 것이 '문맥'이다. 문맥이 바뀌는 것을 Conte.. 2022. 12. 17.
[CS] Process Synchronization and Mutual Exclusion #3 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. Mutual Exclusion Solutions SW solutions • Dekker’s algorithm (Peterson’s algorithm) • Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution • TestAndSet (TAS) instruction OS supported SW solution • Spinlock • Semaphore • Eventcount/sequencer Language-Level solution • Monitor 소프트웨어 솔루션이 있었기 때문에 .. 2022. 12. 16.
[CS] Process Synchronization and Mutual Exclusion #2 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. Mutual Exclusion Solutions SW solutions • Dekker’s algorithm (Peterson’s algorithm) • Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution • TestAndSet (TAS) instruction OS supported SW solution • Spinlock • Semaphore • Eventcount/sequencer Language-Level solution • Monitor Synchronization Har.. 2022. 12. 16.
[CS] Process Synchronization and Mutual Exclusion #1 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. Mutual Exclusion Solutions SW solutions • Dekker’s algorithm (Peterson’s algorithm) • Dijkstra’s algorithm, Knuth’s algorithm, Eisenberg and McGuire’s algorithm, Lamport’s algorithm HW solution • TestAndSet (TAS) instruction OS supported SW solution • Spinlock • Semaphore • Eventcount/sequencer Language-Level solution • Monitor 동기화 (Synchronizatio.. 2022. 12. 16.
[CS] Process Scheduler #4 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. 기본 스케줄링 알고리즘 • FCFS (First-Come-First-Service) • RR (Round-Robin) • SPN (Shortest-Process-Next) • SRTN (Shortest Remaining Time Next) • HRRN (High-Response-Ratio-Next) • MLQ (Multi-level Queue) • MFQ (Multi-level Feedback Queue) MLQ (Multi-level Queue) 작업 (or 우선순위)별 별도의 ready queue를 가짐 - 최초 배정 된 queue를 벗어나지 못함 - 각각의 queue는 자신만의 스케줄링 기법 사용 Queue 사이.. 2022. 12. 16.
[CS] Process Scheduler #3 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. 기본 스케줄링 알고리즘 • FCFS (First-Come-First-Service) • RR (Round-Robin) • SPN (Shortest-Process-Next) • SRTN (Shortest Remaining Time Next) • HRRN (High-Response-Ratio-Next) • MLQ (Multi-level Queue) • MFQ (Multi-level Feedback Queue) SRN (Shortest-Process-Next) Non-preemptive scheduling 스케줄링 기준 : 실행시간 (burst time 기준), Burst time 가장 작은 프로세스를 먼저 처리 "소량 상.. 2022. 12. 16.
[CS] Process Scheduler #2 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. 기본 스케줄링 알고리즘 • FCFS (First-Come-First-Service) • RR (Round-Robin) • SPN (Shortest-Process-Next) • SRTN (Shortest Remaining Time Next) • HRRN (High-Response-Ratio-Next) • MLQ (Multi-level Queue) • MFQ (Multi-level Feedback Queue) FCFS (First-Come-First-Service) 선착순 알고리즘 Non-preemptive scheduling 스케줄링 기준 : 도착 시간 (선착순) 자원을 효율적으로 사용 가능. Why? schedulin.. 2022. 12. 16.
[CS] Process Scheduler #1 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. 다중프로그래밍 (Multi-programming) 여러개의 프로세스가 시스템 내 존재 자원을 할당 할 프로세스를 선택 해야함 - 스케줄링 자원 관리 - 시간 분할 (time sharing) 관리 하나의 자원을 여러 스레드들이 번갈아 가며 사용 예) 프로세서 (Processor) 프로세스 스케줄링 (Process scheduling) > 프로세서 사용시간을 프로세스들에게 분배 - 공간 분할 (space sharing) 관리 하나의 자원을 분할하여 동시에 사용 예) 메모리 (memory) 스케줄링(Scheduling)의 목적 시스템의 성능(performance) 향상 대표적 시스템 성능 지표 (index) - 응답시간 (.. 2022. 12. 16.
[CS] 스레드 관리 이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다. 프로세스는 자원을 할당받고, 제어를 한다. 제어 부분을 스레드라고 한다. 스레드(Thread) Light Weight Process (LWP) 스레드는 자원은 공유하고 제어를 각각 가지고 있다. 프로세서(e.g., CPU) 활용의 기본 단위 구성요소 - Thread ID - Register set (PC, SP 등) - Stack (i.e. local data) 제어 요소 외 코드, 데이터 및 자원들은 프로세스 내 다른 스레드들과 공유 전통적 프로세스 = 단일 스레드 프로세스 스레드의 장점 사용자 응답성 (Responsiceness) - 일부 스레드의 처리가 지연되어도, 다른 스레드는 작업을 계속 처리 가능 자원 공유.. 2022. 12. 15.