Operating System
Blocking과 Non-Blocking, Sync와 Async 그만 헷갈리기
Blocking과 Non-Blocking, Sync와 Async 그만 헷갈리기
2023.06.12Blocking과 Non-Blocking, Sync와 Async 그만 헷갈리기 OS를 공부하면서 Blocking과 Non-Blocking, Sync와 Async 개념을 이해했었는데, 다시 떠올려보니 너무 헷갈렸다. 특히 둘을 섞어서 생각해보면 더 혼란스러워졌다. 헷갈리는 것을 찾아보다가, 우연히 보게 된 좋은 예시가 있어서 정리해두고자 한다. 사무실에 있다. 복합기를 사용해서 스캔을 뜨고싶다. 그런데 문서의 양이 많아서 시간이 좀 오래걸린다. 10분 이상 걸린다고 가정하자. 복합기의 시작 버튼을 눌렀다. 그리고 그 앞에서 스캔이 완료될 때까지 하염없이 기다렸다가 스캔 된 파일 결과물을 갖게 된다면, 이것은 Blocking 이다. 10분은 아무것도 안하기에는 꽤 긴시가이다. Blocking 방식에는 다른 ..
연속 할당과 불연속 할당 / 쉽게배우는 운영체제를 완독하며...
연속 할당과 불연속 할당 / 쉽게배우는 운영체제를 완독하며...
2022.07.05목차 01. 운영체제의 개요 02. 컴퓨터의 구조와 성능 향상 03. 프로세스와 스레드 04. CPU 스케줄링 05. 프로세스 동기화 06. 교착 상태 07. 물리 메모리 관리 08. 가상 메모리의 기초 09. 가상 메모리 관리 10. 입출력 시스템과 저장장치 11. 파일 시스템 연속 할당과 불연속 할당 파일 내 블록을 연결하는 방식 연속 할당 방식 파일을 구성하는 데이터를 디스크상에서 연속적으로 배열하는 방식 처음에는 괜찮은데 중간에 삭제하다보면 연속된 공간이 사라져 연속 할당이 불가능 해짐 불연속 할당 방식 비어있는 블록에 데이터를 분산하여 저장함 연결리스트를 이용한 연결 할당과 인덱스를 이용한 인덱스 할당이 대표적 연결 할당 파일에 속한 데이터를 연결리스트로 관리하는 방식 파일 테이블에는 시작 블록..
디렉터리의 구조
디렉터리의 구조
2022.07.04목차 01. 운영체제의 개요 02. 컴퓨터의 구조와 성능 향상 03. 프로세스와 스레드 04. CPU 스케줄링 05. 프로세스 동기화 06. 교착 상태 07. 물리 메모리 관리 08. 가상 메모리의 기초 09. 가상 메모리 관리 10. 입출력 시스템과 저장장치 11. 파일 시스템 파일과 파일 시스템 디렉터리 관련 있는 파일을 하나로 모아 놓은 곳 1개 이상의 자식 디렉터리를 가질 수 있고, 1개 이상의 파일을 가질 수 있음 하나의 디렉터리에는 여러 개의 파일과 자식 디렉터리가 존재 디렉터리 계층 구조 여러 층으로 구성 가능 루트 디렉터리: 최상위에 있는 디렉터리(트리 노드) 디렉터리 파일 디렉터리도 파일임 일반 파일에는 데이터가 담기고 디렉터리에는 파일 정보가 담김 디렉터리 헤더에는 이름, 만든시간, 접..
파일과 파일 시스템
파일과 파일 시스템
2022.07.03목차 01. 운영체제의 개요 02. 컴퓨터의 구조와 성능 향상 03. 프로세스와 스레드 04. CPU 스케줄링 05. 프로세스 동기화 06. 교착 상태 07. 물리 메모리 관리 08. 가상 메모리의 기초 09. 가상 메모리 관리 10. 입출력 시스템과 저장장치 11. 파일 시스템 파일과 파일 시스템 파일 시스템 사용자가 직접 파일을 보관하는 대신 파일 관리자를 두어 저장 장치의 관리를 맡기는 시스템 파일 관리자가 파일 테이블을 사용하여 파일을 관리 사용자가 특정 파일에 접근하려면 파일 관리자로부터 파일에 접근할 수 있는 권한을 획득해야 함 블록과 파일 테이블 블록은 저장장치에서 사용하는 가장 작은 단위로, 한 블록에 주소 한개 할당 블록은 여러개의 섹터로 구성되며 시스템마다 크기가 다름 블록을 작게 설정..
RAID
RAID
2022.06.15목차 01. 운영체제의 개요 02. 컴퓨터의 구조와 성능 향상 03. 프로세스와 스레드 04. CPU 스케줄링 05. 프로세스 동기화 06. 교착 상태 07. 물리 메모리 관리 08. 가상 메모리의 기초 09. 가상 메모리 관리 10. 입출력 시스템과 저장장치 11. 파일 시스템 12. 네트워크와 분산 시스템 RAID RAID Redundant Array of independent Disks i는 원래 inexpensive 였다고 함. 옛날엔 500메가짜리 하드디스크를 버릴 순 없으니 여러개를 합쳤다는 의미로 쓰였다가 independent라고 바뀜 자동으로 백업을하고 장애가 발생하면 이를 복구하는 시스템 하나의 원본 디스크와 같은 크기의 백업 디스크에 같은 내용을 동시에 저장하고, 하나의 디스크가 고장 ..
디스크 스케줄링
디스크 스케줄링
2022.06.14목차 01. 운영체제의 개요 02. 컴퓨터의 구조와 성능 향상 03. 프로세스와 스레드 04. CPU 스케줄링 05. 프로세스 동기화 06. 교착 상태 07. 물리 메모리 관리 08. 가상 메모리의 기초 09. 가상 메모리 관리 10. 입출력 시스템과 저장장치 11. 파일 시스템 12. 네트워크와 분산 시스템 디스크 스케줄링 디스크 스케줄링 트랙의 이동을 최소화하여 탐색 시간을 줄이는 것이 목적 순번 15 8 17 11 3 23 19 14 20 FCFS 스케줄링 요청이 들어온 순서대로 서비스 15 → 8 → 17 → 11 → 3 → 23 → 19 → 14 → 20' 7 + 9 + 6 + 8 + 20 + 4 + 5 + 6 = 65 SSTF 디스크 스케줄링 현재 헤드가 있는 위치에서 가장 가까운 트랙부터 서..