일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 페이지 부재율
- Oracle
- 컴퓨터구조
- 인터럽트
- mutex
- 스케줄링
- 우선순위
- BOJ
- 교착상태
- 스레드
- 운영체제
- 기아 상태
- 페이징
- 세마포어
- 프로세스
- 추상화
- concurrency
- 가상 메모리
- 백준
- 트랩
- 알고리즘
- 부동소수점
- 단편화
- 동기화
- ALU
- PYTHON
- fork()
- Algorithm
- mips
- 페이지 대치
- Today
- Total
목록운영체제 (50)
봉황대 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학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 가상 메모리 시스템은 파일의 추상화를 기반으로 동작한다. 즉, exe 파일을 구성하는 블록들이 프로세스의 페이지로 맵핑되어 하나의 프로세스로 나타나도록 추상화되는 것이다. * exe 파일 : 컴퓨터의 실행 파일 또한 모든 입출력 장치들은 장치 파일이라는 개념으로 일관성 있게 추상화된다. 예를 들어, 동작 센서도 특수한 형태의 파일로 생각하여 이에 대해서도 일반적인 파일에 대한 조작인 open/close 및 read/write 등의 조작을 하게 된다. 이 추상화의 실현을 위하여 파일 시스템이 존재하는 것이다. ..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 파일 (File) 운영체제는 컴퓨터 시스템을 편리하게 사용하기 위해 1. 저장된 정보에 대한 일관된 논리적 관점으로 제공하고 2. 저장 장치의 물리적 특성을 추상화하여 논리적 저장 단위, 파일을 정의한다. 파일은 보조 저장 장치에 저장되어 있는 관련 정보의 집합체이다. = 작성자와 사용자에 의해서 그 의미가 정의된 비트, 바이트, 행 또는 레코드들의 연속체 하나의 파일은 디스크 내 여러 개의 섹터로 구성되어 있다. (섹터 : PC용 하드 디스크의 경우 512 B) 메모리와 디스크 간의 입출력 전송은 블록 단위로..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 커널 메모리의 할당 (Kernel Memory Allocation) 사용자 모드에서 수행중인 프로세스가 추가적인 메모리를 요구하면 커널이 관리하는 가용 페이지 프레임에서 페이지들이 할당된다. 하지만 커널 메모리는 사용자 모드 프로세스에게 할당해주는 페이지 리스트와는 별도의 메모리 풀에서 할당받는다. 그 이유는 다음과 같다. 1. 커널은 다양한 크기의 자료구조를 위해 메모리를 할당받는데, 이때 단편화에 의한 낭비를 최소화해야 한다. 2. 물리 메모리에 직접 접근하는 특정 하드웨어 장치는 물리적으로 연속적인 메모리..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 스레싱 (Thrashing) 스레싱은 과도한 페이징 작업으로 프로세스들이 실제 실행되는 시간보다 페이지를 교체하는 데에 더 많은 시간을 사용하고 있는 현상을 말한다. 운영체제는 CPU의 이용률(utilization)을 계속 감시하고 있다. 만약 CPU 이용률이 너무 낮아지면 이때 운영체제는 새로운 프로세스를 시스템에 더 추가하여 다중 프로그래밍의 정도(degree of mulitprogramming)을 높인다. 이때 전역 페이지 교체 알고리즘을 사용해서 어떤 프로세스의 페이지인지에 대한 고려 없이 교체를 수행하..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. 프레임의 할당 여러 개의 프로세스들에게 가용 메모리 몇 프레임씩을 할당해야 하는지도 중요한 논의 사항이다. 프로세스 당 필요한 최소 프레임 수는 명령어 집합 아키텍처(instruction set architecture)에 의해서 결정되는데, 각 프로세스에게는 이 최소한의 프레임 수만큼은 할당되어야 한다. 만약 명령어 수행이 완료되기 전에 페이지 부재가 발생하면 그 명령어는 재실행되어야 하기 때문이다. 따라서 하나의 명령어가 참조하는 모든 페이지가 동시에 메모리에 올라와 있어야 해당 명령어의 수행이 끝날 수 있게..
* 본 글은 '운영체제(Operating System: Concepts) 9th edition'의 내용과 2021학년도 1학기에 수강한 '운영체제' 과목 강의 내용을 함께 정리하여 작성하였습니다. LRU 근사(LRU-Approximation) 페이지 교체 LRU 페이지 교체는 가장 오랜 기간 동안 사용되지 않은 페이지를 선택하여 대치하는 알고리즘이다. 교체할 페이지를 선택하기 위해서는 페이지가 '참조된 시간'에 대한 정보를 이용해야 하는데, 이 시간 정보들을 관리하기 위해서는 계수기, 클럭의 시간 값이나 스택을 활용해야 한다. 하지만 계수기 값과 스택을 갱신하는 일은 메모리 참조 때마다 수행되어야 하기 때문에 메모리 접근 성능이 거의 10배 느려지게 되며, 모든 사용자 프로세스의 수행 속도를 그만큼 저하..