일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- java
- DFS
- Redux
- BFS
- 프로그래머스
- 알고리즘
- Database
- 리트코드
- frontend
- react
- 자바
- 안드로이드
- Data Structure
- Algorithm
- 동적 계획법
- 다이나믹 프로그래밍
- LeetCode
- Python
- VIM
- CS
- vscode
- Javascript
- Graph
- DP
- 백준
- TypeScript
- git
- db
- network
- 그레이들
- Today
- Total
늘 겸손하게
CS - Operating System - 메모리 계층 본문
메모리 계층
메모리 계층은 레지스터, 캐시, 메모리, 저장장치로 구성됨
레지스터 (Register) : CPU 안에 있는 작은 메모리로 속도가 가장 빠르나 용량이 가장 적습니다.
캐시 : L1, L2, L3 캐시
주기억장치 : RAM을 가리킴.
보조기억장치 : HDD, SSD를 말하며 속도가 느리나 용량이 큽니다.
램은 하드디스크로부터 일정량의 데이터를 복사해서 임시 저장하고 이를 필요 시마다 CPU에 빠르게 전달하는 역할을 합니다. 메모리 계층을 만들고 관리하는 이유는 경제성 때문. 16GB 램은 8만원이지만 16GB SSD는 훨씬 더 저렴하게 구매 가능.
캐시
데이터를 미리 복사해 놓는 임시 저장소.
빠른 장치와 느린 장치에서 속도 차이에 따른 병목 현상을 줄이기 위한 메모리를 말합니다.
실제로 메모리와 CPU 사이의 속도 차이가 너무 크기 때문에 그 중간에 레지스터 계층을 둬서 속도 차이를 해결합니다. 이렇게 속도 차이를 해결하기 위해 계층과 계층 사이에 있는 계층을 캐싱 계층이라고 합니다.
지역성의 원리
캐시 계층 없이 캐시를 직접 설정할 때는 어떻게 해야 할까?
당연하게도 자주 사용하는 데이터를 기반으로 설정해야 합니다. 자주 사용하는 데이터에 대한 근거가 되는 것은 무엇일까요? 바로 지역성입니다. 지역성은 시간 지역성(temporal locality)과 공간 지역성(spatial locality)으로 나뉩니다.
시간 지역성 (temporal locality)
최근 사용한 데이터에 다시 접근하려는 특성. for문 안의 변수 i 를 예로 들 수 있다.
공간 지역성 (spatial locality)
최근 접근한 데이터를 이루고 있는 공간 혹은 그 가까운 공간에 접근하는 특성
웹 브라우저의 캐시
소프트웨어적인 캐시로는 대표적으로 웹 브라우저의 작은 저장소 쿠키, 로컬 스토리지, 세션 스토리지가 있습니다.
쿠키
만료기한이 있는 키-값 저장소로 4KB까지 데이터를 저장할 수 있고 만료기한을 정할 수 있습니다.
로컬 스토리지
만료기한이 없는 키-값 저장소로 10MB까지 데이터를 저장할 수 있으며 웹 브라우저를 닫아도 유지되고 도메인 단위로 저장, 생성됩니다.
HTML5를 지원하지 않는 웹 브라우저에서는 사용할 수 없으며 클라이언트에서만 수정 가능합니다.
세션 스토리지
만료기한이 없는 키-값 저장소입니다. 탭 단위로 세션 스토리지를 생성하며, 탭을 닫을 때 해당 데이터가 삭제됩니다. 5MB까지 저장 가능합니다.
HTML5를 지원하지 않는 웹 브라우저에서는 사용할 수 없으며 클라이언트에서만 수정 가능합니다.
더 자세히
https://besforyou.tistory.com/262
'Computer Science > Operating System' 카테고리의 다른 글
CS - Operating System - 메모리 관리 (0) | 2023.04.16 |
---|---|
CS - Operating System - 캐시 (cache) (0) | 2023.04.16 |
CS - Operating System - Memory (0) | 2022.11.24 |
CS - Operating System - 공유자원과 임계 영역, 세마포어 & 뮤텍스 (0) | 2022.11.24 |
CS - Operating System - Race Condition (0) | 2022.11.24 |