본문 바로가기
728x90

쉽게 배우는 운영체제15

디렉터리의 구조 디렉터리의 개념 디렉터리는 관련 있는 파일을 하나로 모아놓은 곳으로 1개 이상의 자식 디렉터리와 1개 이상의 파일을 가질 수 있다. 즉, 하나의 디렉터리에는 여러 개의 파일과 자식 디렉터리가 존재한다. 디렉터리 파일 디렉터리도 파일이다. 일반 파일에는 데이터가 담겨 있고 디렉터리에는 파일 정보가 담겨있다. 디렉터리에도 일반 파일과 마찬가지로 헤더가 있다. 디렉터리 헤더에는 디렉터리 이름, 만든 시간, 접근 권한 등의 정보가 기록되어 있다. 디렉터리에는 마침표(.) 파일과 2개 마침표(..) 파일이 있다. 마침표 파일은 자기 자신의 디렉터리를 가리키고, 2개 마침표 파일은 상위 디렉터리를 가리킨다. 루트 디렉터리의 마침표 파일은 자기 자신인 5번 블록을 가리킨다. 2개의 마침표 파일은 상위 디렉터리를 가리.. 2023. 12. 5.
RAID 데이터를 저장장치에 보관할 때는 백업을 해야 한다. 하드디스크에 저장된 데이터는 영원할 것 같지만 그렇지 않다. 하드디스크도 기계라 수명이 있고 USB 메모리나 SSD도 최대 횟수가 정해져 있다. 따라서 수시로 백업해야 하는데 이를 수동으로 하면 매우 번거롭다. RAID redundant array of independent disks는 자동으로 백업하고 장애가 발생하면 이를 복구하는 시스템으로 '레이드'라고 읽는다. 메모리가 아닌 값싼 디스크를 이용하기 때문에 이런 이름이 붙었다. RAID는 동일한 규격의 디스크를 여러 개 모아 구성하며, 장애가 발생했을 때 데이터를 복구하는 데 사용된다. RAID의 원리는 하나의 원본 디스크와 같은 크기의 백업 디스크에 같은 내용을 동시에 저장하고, 한 디스크가 고장.. 2023. 12. 2.
디스크 스케줄링 FCFS디스크 스케줄링 FCFS디스크 스케줄링은 가장 단순한 디스크 스케줄링 방식으로, 요청이 들어온 트랙 순서대로 서비스하고 별다른 기법을 사용하지 않는다. 따라서 헤드는 요청된 트랙 번호 순서대로 매우 큰 폭으로 빠르게 움직인다. SSTF디스크 스케줄링 SSTF디스크 스케줄링은 현재 헤드가 있는 위치에서 가장 가까운 트랙부터 서비스한다. 만약 다음에 서비스할 두 트랙의 거리가 같다면 먼저 요청받은 트랙을 서비스한다. SCAN디스크 스케줄링 SCAN디스크 스케줄링은 SSTF디스크 스케줄링의 공평성 위배 문제를 완화하기 위해 만들어진 기법이다. SCAN디스크 스케줄링에서는 헤드가 한 방향으로만 움직이면서 서비스한다. 헤드가 움직이기 시작하면 맨 마지막 트랙에 도착할 때까지 되돌아가지 않고 계속 앞으로만 .. 2023. 11. 30.
페이지 교체 알고리즘 페이지 교체 알고리즘의 개요 프로세스가 요구한 페이지가 현재 메모리에 없으면 페이지 부재가 발생한다. 페이지 부재가 발생하면 스왑 영역에서 페이지를 메모리로 가져오는데, 만약 메모리가 꽉 찼다면 메모리에 있는 페이지를 스왑 영역으로 내보내야 한다. 페이지 교체 알고리즘은 스왑 영역으로 보낼 페이지를 결정하는 알고리즘이다. 페이지 교체 알고리즘의 종류 - 간단한 알고리즘 무작위: 무작위로 대상 페이지를 선정하여 스왑 영역으로 보낸다. FIFO: 처음 메모리에 올라온 페이지를 스왑 영역으로 보낸다 - 이론적 알고리즘 최적: 미래의 메모리 접근 패턴을 보고 대상 페이지를 선정하여 스왑 영역으로 보낸다. - 최적 접근 알고리즘 LRU: 시간적으로 멀리 떨어진 페이지를 스왑 영역으로 보낸다. LFU: 사용 빈도가.. 2023. 11. 22.
요구 페이징 프로세스가 필요로 하는 데이터를 언제 메모리로 가져올지 결정하는 것이 가져오기 정책이다. 일반적인 방법은 프로세스가 요청할 때 메모리로 가져오는 것으로 이를 요구 페이징이라고 한다. 예를 들어 메모리에는 포토샵의 본체를 프로그램만 올리고 필터는 사용자가 필요로 할 때마다 메모리로 가져오는 것이 효율적이다. 포토샵의 예와 같이 프로그램 일부만 가져와 실행하고 사용자가 특정 기능을 요구할 때 해당 모듈을 메모리에 올리면 메모리의 절약과 효율적 관리, 프로세스의 응답 속도 향상 등의 효과를 볼 수 있다. 이처럼 사용자가 요구할 때 해당 페이지를 메모리로 가져오는 것을 요구 페이징 demand paging이라고 한다. 페이지 테이블 엔트리의 구조 가상 메모리의 크기는 물리 메모리와 스왑 영역을 합친 것이다. 이.. 2023. 11. 16.
세그먼테이션 기법 변환 색인 버퍼 가상 주소를 물리 주소로 변환하는 작업은 CPU안에 있는 메모리 관리 유닛 MMU이 담당한다. 가상 주소를 물리 주소로 변환하려면 메모리에 두 번 접근해야 한다. 1. 메모리 관리 유닛이 가상 주소를 받아 물리 주소로 변환하려면 페이지 테이블이 필요하다. 페이지 테이블은 메모리에 있기 때문에 MMU는 메모리에 있는 페이지 테이블에 접근하여 물리 주소로 변환한다. 2. 변환된 물리 주소를 이용하여 필요한 데이터를 가져온다. CPU안에 있는 레지스터나 캐시에 접근할 때보다 물리 메모리에 접근할 때 시간이 몇 배 이상 더 걸린다. 따라서 가상 주소를 물리 주소로 변환한 후 데이터를 가져오기 위하여 메모리에 두 번이나 접근하는 방식은 CPU 성능을 떨어뜨린다. 이러한 문제를 개선하기 위하여 페이.. 2023. 11. 15.
728x90