본문 바로가기

운영체제16

[운영체제] KOCW 12.3 - Ch11: File System Implementation Disk에서 내용이 들어 있는 파일 관리 UNIX: inode MS-DOS: FAT (Linked allocation의 변형) Contiguous allocation Linked allocation Indexed allocation 비어있는 block 관리(Free-Space management) Bit map(Bit vector) Linked list: 빈 공간을 연결함 Grouping: Linked list의 변형 Counting 디렉토리 관리(Directory implementation) Linear list Hash table File system에의 접근 VFS NFS 메모리 디스크 ▶ 운영체제 커널 메모리 File system ▶ 사용자 메모리 Swap area ※ 파일을 읽어와야 할 때 : .. 2023. 6. 10.
[운영체제] KOCW 12.2 - Ch11: File System Implementation Allocation of File Data in Disk: 파일을 디스크에 저장하는 방법 1) Contiguous Allocation(연속 할당) ▷ 단점 External fragmentation(외부조각) File grow가 어려움 (file을 위해 미리 hole을 배당해 둔다면, internal fragmentation(내부조각) 문제가 발생한다.) ▷ 장점 Fast I/O: 데이터가 연속할당 되어 있기 때문에, 한 번의 seek/rotation으로 많은 바이트 transfer --> realtime file, process swapping용으로 쓰인다. Direct access(= random access)(직접접근) 가능하다. 2) Linked Allocation ▷ 장점 External frag.. 2023. 6. 10.
[운영체제] KOCW 12.1 - Ch10: File System File & File System ▶ File A named collection of related information 일반적으로 비휘발성의 보조기억장치에 저장된다. 예) 하드디스크 ▶ File Operation open/close, create, read/write, reposition(Iseek); 파일 접근 위치 수정, delete ▶ File attribute( = metadata) : 파일 자체의 내용이 아니라, 파일을 관리하기 위한 각종 정보들 파일 이름, 유형, 저장된 위치, 파일 사이즈 접근 권한(읽기/쓰기/실행), 시간(생성/변경/사용), 소유자 등 ▶ File system : 운영체제에서 파일을 관리하는 부분 파일 및 파일의 메타데이터, 디렉토리 정보 등을 관리 Directory & .. 2023. 6. 10.
[운영체제] KOCW 11.2 - Ch9: Virtual Memory 캐싱(Caching) : 한정된 빠른 저장공간(캐시; physical memory)을 가지고 계속적으로 요청되는 새로운 객체를 저장공간(swap area; disk)에 읽어들였다가 후속 요청 시 직접 서비스하는 방식 ▷ 캐싱 기법 Paging system Cache memory Buffer caching Web caching ▷ 캐시 운영의 시간 제약 O(n) -- Order of n(n번 비교)는 너무 많다. O(1) -- Order of 1(비교x) ~ O(log n) -- Order of (log n) 정도까지 허용 Clock Algorithm ※ LRU, LFU Algorithm: Paging system에서 이용 불가능하다. Write: reference bit = 1, modified bit .. 2023. 6. 10.
[운영체제] KOCW 11.1 - Ch9: Virtual Memory Paging : 실제로 필요할 때 page를 물리적 메모리에 올리는 것 I/O 양의 감소 Memory 사용량 감소 빠른 응답시간 더 많은 사용자 수용 가능 Physical memory에 없는 Page의 Page table: valid-invalid bit = 0 (Invalid) ▶ valid-invalid bit = 0(Invalid) 사용되지 않는 주소 영역인 경우 page가 물리적 메모리에 없는 경우: swap area(disk) 처음에는 모든 page entry가 invalid로 초기화된다. address translation 시에 invalid bit이 set되어 있으면 --> "page fault" Page Fault 1. invalid page를 접근하면, MMU(주소변환 하드웨어)가 tra.. 2023. 6. 10.
[운영체제] KOCW 10 - Ch8: Memory Management Allocation of Physical Memory ※ 사용자 프로세스 영역의 할당 방법 ▶ Contiguous allocation(연속 할당) Fixed partition(고정분할) 방식 Variable partition(가변분할) 방식 - Register 2개: limit register, relocation register ▶ Noncontiguous allocation(불연속 할당) Paging : logical address --> page table --> physical address - logical address: (page 번호 + page 내의 위치) - page table -- Problem: page table 엔트리가 너무 많이 필요하다 --> Solution: 다단계 pagi.. 2023. 6. 10.
[운영체제] KOCW 9 - Ch8: Memory Management Allocation of Physical Memory Contiguous allocation(연속할당) Noncontiguous allocation(불연속할당) Contiguous allocation(연속할당) Noncontiguous allocation(불연속할당) Paging Process의 logical memory를 동일한 사이즈의 page로 나눈다. --> logical memory의 내용이 page 단위로 noncontiguous(불연속)하게 저장된다. physical memory를 동일한 사이즈의 frame으로 나눈다. (page의 크기 = frame의 크기) page table: logical address --> physical address page table -- valid/inval.. 2023. 6. 10.
[운영체제] KOCW 8 - Ch8: Memory Management Logical vs. Physical Address ▶ Logical address 각 프로세스마다 독립적으로 가지는 주소공간 각 프로세스마다 0번지부터 시작 CPU가 보는 주소: logical address ▶ Physical address 메모리에 실제 올라가는 위치 ※ 주소 바인딩: 논리적 주소 --> 물리적 주소로의 주소 변환 Symbolic address --> Logical address --> Physical address\ 주소 바인딩(Address Binding) ▶ Compile time binding 물리적 메모리 주소(physical address)가 컴파일 시 알려짐 시작위치 변경 시 재컴파일 컴파일러: 절대코드(absolute code) ▶ Load time binding Lod.. 2023. 6. 9.
[운영체제] KOCW 7 - Ch7: Deadlock Deadlock Avoidance : 자원 요청에 대한 부가정보를 이용하여 자원 할당이 deadlock으로부터 안전(safe)한지를 조사하여, 안전한 경우에만 할당한다. ▷ 모든 프로세스들이 필요로 하는 각 자원별 최대 사용량을 미리 선언하도록 한다. ※ safe state, safe sequence : 프로세스의 sequence 이 safe하려면, P의 자원 요청이 "가용자원 + 모든 Pj의 보유 자원"에 의해 충족되어야 한다. ※ 2가지 경우의 avoidance 알고리즘 Single instance per resource types --> Resource Allocation Graph algorithm Multiple instance per resource types --> Banker's algor.. 2023. 6. 9.