일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- html
- 카카오
- UI
- 생활코딩
- 큐
- Til
- UX
- 30daysdowoonchallenge
- CSS
- javascript
- 운영체제
- 스택
- REST_API
- 코드스테이츠
- 회고
- mysemester
- redux
- 해시테이블
- 프로토타입
- level1
- vercel
- 프로그래머스
- Next.js
- React
- 자료구조
- web
- 자바스크립트
- useState
- superstarjypnation
- Today
- Total
목록CS (37)
데굴데굴

디스크의 구조 Logical block 디스크의 외부에서 보는 디스크의 단위 정보 저장 공간들 주소를 가진 1차원 배열처럼 취급한다 정보를 전송하는 최소 단위 내부에서는 logical block 단위로 접근 Sector logical block이 저장되는 디스크 내의 물리적인 위치 디스크 내부에서 관리 디스크를 읽고 쓰는 요청은 disk controller가 수행 logical block이 물리적인 디스크에 매핑된 위치 sector 0은 가장 바깥쪽 실린더의 첫 트랙에 있는 첫 번째 섹터 sector 0에는 부팅과 관련된 정보가 담겨있다 디스크 관리 physical formatting (low-level formatting) 디스크를 컨트롤러가 읽고 쓸 수 있도록 섹터들로 나누는 과정 각 섹터는 head..

Allocation of File Data in Disk Contiguous Allocation 연속 할당 하나의 파일이 디스크 상에 연속되어 저장되는 방식 ex) 블록의 크기가 6개인 파일이 있을 때 19번 블록이 시작점이라고 한다면 24번 블록까지 연속적으로 차지한다 단점 블록의 크기가 균일하지 않기 때문에 외부 조각이 발생할 수 있다 file grow가 어렵다 file 생성 시 얼마나 큰 hole을 배당할 것인가? grow 가능 vs 낭비 (내부 조각 발생) 장점 i/o 작업이 빠르다 하드디스크의 접근 시간은 대부분 헤드 이동의 오버헤드임 한 번의 seek/rotation으로 많은 바이트를 전달할 수 있다 process의 swap area로도 사용 가능 direct access(=random acc..

File and File System File A named collection of related information 관련 정보를 이름을 가지고 저장하는 것 비휘발성의 보조기억장치에 저장 (하드디스크) 운영체제에서는 데이터 저장 목적 뿐만 아니라 장치 관리 차원에서도 file이라는 논리적 단위를 쓴다 관련 연산 create, read, write, reposition(lseek), delete, open, close 등 File attribute (파일의 metadata) 파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들 파일 이름, 유형, 저장된 위치, 파일 사이즈 접근 권한 (읽기/쓰기/실행), 시간 (생성/변경/사용), 소유자 등 File system 운영체제에서 파일을 관리하는 부분..

캐싱 기법 한정된 빠른 공간(=캐쉬)에 요청된 데이터를 저장해두었다가 후속 요청 시 캐시로부터 직접 서비스하는 방식 paging system, cache memory, buffer caching, web caching 등에서 사용 buffer caching이나 web caching의 경우 O(1)에서 O(logN)까지 허용 클럭 알고리즘(Clock Algorithm) - 대부분의 시스템에서 사용 일반 페이지 참조 과정에서 OS는 전혀 관여하지 않는다. page fault인 경우에만 OS가 관여함. 따라서 페이지가 이미 메모리에 존재하는 경우에는 참조 시각 등의 정보를 OS가 알 수 없다. LRU와 LFU의 조작 자체가 불가능하다. 그리고 두 알고리즘은 페이지의 참조 시각, 참조 횟수를 보관하고 있다가 비..

Demand Paging 실제로 필요할 때 page를 메모리에 올리는 것 이점 i/o 양의 감소 메모리 사용량 감소 빠른 응답 시간 더 많은 사용자 수용 가능 valid/invalid bit의 사용 invalid: 해당 페이지가 물리적 메모리에 없음 or 사용되지 않는 주소 영역임 처음에 모든 page entry는 invalid로 초기화됨 주소 변환 시 invalid bit으로 설정되어 있다면 page fault가 발생했다고 말한다 -> 일종의 software interrupt Page Fault invalid page로 접근하면 [[8강 메모리 관리 - 1#MMU (Memory-Management Unit)|MMU]]가 trap을 발생시킴 (page fault trap) kernel mode로 들어가 ..

Segmentation 기법 프로세스의 주소 공간을 의미 단위의 segment로 나누어 물리적 메모리에 올리는 기법 주소 변환 논리적 주소의 구조 segment number: 해당 논리적 주소가 프로세스 주소 공간 내에서 몇 번째 세그먼트에 속하는가 segment table segment-table base register (STBR): 물리적 메모리에서의 segment table 위치 저장 segment-table length register (STLR): 프로그램이 사용하는 segment의 개수 segment의 크기가 균일하지 않기 때문에 길이 정보도 담고 있다. limit register보다 더 큰 길이를 요청하게 되면 잘못된 접근이므로 trap을 발..

Paging 기법 프로세스의 주소 공간을 동일한 크기의 페이지 단위로 나누어 물리적 메모리의 서로 다른 위치에 페이지들을 저장하는 방식 각 프로세스의 주소 공간 일부는 backing store에 일부는 physical memory에 저장 논리적 메모리의 page와 물리적 메모리의 frame의 크기가 같기 때문에 동적 메모리 할당 문제가 발생하지 않는다. 빈 프레임이 있다면 그 곳에 끼워넣으면 되기 때문이다. 기본 방식 logical memory를 동일한 크기의 page로 나눈다 (보통 4KB) physical memory를 페이지와 동일한 크기의 frame으로 나눈다 모든 가용 frame을 관리한다 page table을 이용해 logical address를 physical address로 변환한다 외부 ..

주소는 32비트 체계와 64비트 체계로 나뉜다. 32비트로 구성하면 232바이트 만큼의 메모리 공간에 서로 다른 주소를 할당할 수 있다. 이렇게 구성된 메모리 공간을 그대로 쓰지 않고 체계적으로 나눠서 사용한다. page = 4KB(212byte) 단위로 묶은 것 32비트 주소 체계의 한 페이지 내에서 바이트별 위치 구분을 위해서는 12비트가 필요 논리적 주소(Logical address, virtual address): 프로세스마다 독립적으로 가지는 주소 공간 물리적 주소 (Physical address): 메모리에 실제로 올라가는 위치 주소 바인딩: 메모리 주소를 결정하는 것 Logical Address에서 Physical Address로 변환되는 시점이 어디인가? 주소 바인딩 (Address Bin..