일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 기아 상태
- 프로세스
- ALU
- 단편화
- 인터럽트
- Oracle
- 컴퓨터구조
- 페이지 대치
- 부동소수점
- mips
- 운영체제
- concurrency
- 페이징
- BOJ
- 트랩
- 스레드
- 동기화
- 알고리즘
- 스케줄링
- PYTHON
- 세마포어
- 추상화
- 백준
- 페이지 부재율
- Algorithm
- mutex
- fork()
- 교착상태
- 가상 메모리
- 우선순위
- Today
- Total
목록스케줄링 (10)
봉황대 in CS

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 회전 지연 시간 최적화 초창기 디스크 접근 시간을 좌우하는 것은 대부분 탐색 시간이었다. * 탐색 시간 (seek time) : 디스크 암(arm)이 헤드를 원하는 실린더로 움직이는 데 걸리는 시간 하지만 요즘 사용하는 하드 디스크는 탐색 시간과 회전 지연 시간의 자릿수가 같은 정도로 발전되어서 회전 지연 시간 최소화로도 성능을 개선할 수 있게 되었다. 특히 한 트랙 내 여러 곳에 분산된 섹터들 중 일부만 요구하는 요청이 많을 경우 회전 지연 시간을 최적화하여 성능을 크게 개선할 수 있다. 아래는 회전 지연 시..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 자기 디스크 (Magnetic Disk) 플래터(platter) : 원형 평판 모양으로, 정보를 플래터 상에 자기적으로 기록하여 저장한다. 읽기-쓰기 헤드(read-write head)는 모든 플래터의 각 표면 바로 위에서 움직이며 헤드는 모든 헤드를 한꺼번에 이동시키는 디스크 암(disk arm)에 부착되어 있다. 디스크 암 : 읽기나 쓰기를 수행해야 하는 트랙을 찾아가는 역할 동일한 암 위치에 있는 트랙의 집합은 하나의 실린더(cylinder)를 형성한다. 플래터의 표면은 원형 트랙(track)으로 논리적으..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 프레임의 할당 여러 개의 프로세스들에게 가용 메모리 몇 프레임씩을 할당해야 하는지도 중요한 논의 사항이다. 프로세스 당 필요한 최소 프레임 수는 명령어 집합 아키텍처(instruction set architecture)에 의해서 결정되는데, 각 프로세스에게는 이 최소한의 프레임 수만큼은 할당되어야 한다. 만약 명령어 수행이 완료되기 전에 페이지 부재가 발생하면 그 명령어는 재실행되어야 하기 때문이다. 따라서 하나의 명령어가 참조하는 모든 페이지가 동시에 메모리에 올라와 있어야 해당 명령어의 수행이 끝날 수 있게..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 실시간 시스템 (Real-Time System) 실시간 시스템에서는 작업 수행이 요청되었을 때 이를 제한된 시간 안에 처리하여 결과를 내주어야 한다. 이는 연성 실시간 시스템과 경성 실시간 시스템으로 분류할 수 있다. 1. 연성 실시간 시스템 (Soft Real-Time System) 실시간 프로세스가 실시간이 아닌 프로세스들에 우선권을 가진다는 것만 보장하며, 이것이 스케줄 되는 시점에 관해서는 아무런 보장이 없다. (마감 시간(deadline)을 만족하는 것이 확률로만 존재) 2. 경성 실시간 시스템 (Ha..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 지금까지는 단일 처리기 시스템(처리기(CPU)가 하나 있는 시스템)에서의 CPU 스케줄링에 대하여 알아보았다. 한 시스템 내에서 여러 개의 CPU가 사용 가능하다면 어떤 것들이 변화되며, 어떤 문제들이 추가적으로 발생할까? 다중 처리기 스케줄링 (Multiple-Processor Scheduling) 다중 처리기에서는 부하 공유(load sharing)가 가능해진다. * 부하 공유 : 쉬고 있는 처리기에 할 일을 부여하는 것. 한 처리기는 계속 일하고 나머지는 놀고 있는 상태가 되어서는 안 된다. 하지만 이에 ..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 스레드를 지원하는 운영체제에서는 프로세스를 스케줄 하는 것이 아니라, 실질적으로는 스레드를 스케줄 한다. 하지만 "프로세스 스케줄링"과 "스레드 스케줄링"의 용어는 상호 교환적으로 사용된다. 따라서 해당 책에서는 일반적인 스케줄링 개념을 설명할 경우 "프로세스 스케줄링"을 사용하고, 스레드에 국한된 개념을 가리키는 경우에는 "스레드 스케줄링"이라는 용어를 사용하고 있다. 스레드 스케줄링 앞서 스레드의 2가지 형태, 사용자 스레드와 커널 스레드에 대하여 알아보았다. 1. 사용자 스레드 : 응용 프로그램 내의 라이..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 스케줄링 알고리즘 라운드 로빈 스케줄링 (Round-Robin Scheduling) RR 스케줄링이라고도 한다. FIFO 스케줄링에서 선점이 추가된 스케줄링이라고 볼 수 있다. 구현 : 원형 큐(circular queue) 준비 큐를 원형 큐로 간주하고, 새로운 프로세스들은 원형 큐의 꼬리에 추가된다. 이 큐에서 순환식으로 한 프로세스에게 작은 단위의 시간량(타임 퀀텀, time quantum)만큼씩 CPU를 할당한다. * 타임 퀀텀은 타임 슬라이스와 같은 개념이다. (10ms ~ 100ms) 즉, 실행 상태의..

* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 비선점 스케줄링 (Non-preemptive Scheduling) 프로세스가 종료하거나 대기 상태로 전환해 CPU를 자진 반납할 때까지 CPU에 의한 실행을 보장해주는 스케줄링 작업 실행 시간 전체 또는 한 번의 CPU 배당에 대해 적용된다. 선입 선처리 스케줄링 (FCFS) 최단 작업 우선 스케줄링 (SJF) - 선점형으로도 가능 우선순위 스케줄링 - 선점형으로도 가능 선점 스케줄링 (Preemptive Scheduling) (1) 시분할 시스템에서 타음 슬라이스가 소진되었거나, (2) 인터럽트 또는 시스템 ..