안녕하세요 Pingu입니다! 지난 글까지는 CPU 가상화에 대해 알아봤고 이번 글부터는 메모리 가상화에 대해 알아보려고 합니다! 이번 글에서는 메모리 가상화의 목적과 메모리 가상화를 위한 메모리 사용의 변화 과정, 주소 공간을 추상화하는 개념에 대해 알아보려고 합니다. 제가 공부할 때 참고하고 있는 OSTEP 책에선 Chapter 13 - Address Space부분입니다. The Abstraction: Address Spaces 그럼 초기의 컴퓨터에서 지금의 컴퓨터로 발전하는 과정을 메모리 사용 관점에서 살펴보도록 하겠습니다. Early Systems 메모리의 관점에서 보면 초기의 컴퓨터는 사용자에게 추상화를 지금처럼 많이 제공하지 않았습니다. 이게 초기 컴퓨터의 메모리 구성입니다. 위와 같이 OS와 ..
안녕하세요 Ick입니다. 오늘은 여러 정렬 알고리즘 중 힙 정렬에 대해 공부했고 그에 대한 내용을 정리해볼까 합니다! 힙 정렬 (Heap Sort) 우선 정렬 알고리즘에는 버블 정렬, 병합 정렬, 퀵 정렬 등 여러 방법이 있는데요, 힙 정렬은 그중 시간 복잡도 O(N*logN)의 성능을 보이는 정렬 알고리즘입니다! 이러한 힙 정렬을 이해하기 위해선 힙(Heap)이라는 개념을 이해하셔야 합니다. 가장 중요한 것은 완전이진트리구조를 갖는다는 것입니다. 힙에는 최대 힙, 최소 힙이 있는데 최대 힙은 부모 노드가 자식 노드보다 값이 큰 힙을 말하며, 최소힙은 부모 노드가 자식 노드보다 값이 작은 힙을 말합니다. 그림으로 힙을 살펴보면 위와 같습니다. 최대 힙같은 경우엔 부모 노드가 자식 노드보다 커야 하므로 자..
- Total
- Today
- Yesterday
- 문법
- pattern
- 코딩테스트
- 프로그래밍
- OS
- 자료구조
- 앱개발
- BFS
- dfs
- document
- OSTEP
- 테이블뷰
- IOS
- operating
- 동시성
- DP
- 코테
- 알고리즘
- 백준
- Apple
- Swift
- System
- Combine
- design
- Publisher
- 아이폰
- 스위프트
- Xcode
- mac
- operator
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |