28. 운영체제 [가상메모리, 스와핑, 페이지폴트, 스레싱, 메모리 할당]
28. 운영체제 [가상메모리, 스와핑, 페이지폴트, 스레싱, 메모리 할당] 출처 : 면접을 위한 CS전공지식 노트(책 / 강의) 가상 메모리 메모리 관리 기법의 하나로 기계에 실제 이용 가능한 기억 자원을 이상적으로 추상화하여 사용자들에게 매우 큰 (주) 메모리로 보이게 만드는 것이다 주로 멀티테스킹 운영 체제에서 사용되고, 주 기억 장치 (RAM) 보다 큰 메모리 영역을 제공하는 방법으로도 사용된다 가상으로 가상 주소 또는 논리 주소가 주어지고, 실제 메모리 상에는 물리 주소 또는 실 주소가 있다 여기서 가상 주소는 MMU(Memory Management Unit), 메모리 관리 장치를 통해 실제 주소로 변환된다 TLB, '페이지 테이블'을 기반으로 가상 주소에서 물리 주소로 변환이 된다 TLB는 메모..
2023. 3. 16.
[Python] 백준 14719 빗물
🧑💻 [Python] 백준 14719 빗물 Gold 4 - 구현 입력 값 M, N = 4, 8 3 1 2 3 4 1 1 2 i left right min(max(left), max(right)) block[i] water 1 3 2, 3, 4, 1, 1, 2 3 1 2 2 3, 1 3, 4, 1, 1, 2 3 2 3 3 3, 1, 2 4, 1, 1, 2 3 3 3 4 3, 1, 2, 3 1, 1, 2 3 4 3 5 3, 1, 2, 3, 4 1, 2 2 1 4 6 3, 1, 2, 3, 4, 1 2 2 1 5 left, right 는 현재의 인덱스 기준으로 왼쪽과 오른쪽에, 더 큰 지역이 있는지 보는 것이다 이것을 통해서 물이 고이는지 안 고이는지 알 수 있다 min(max(left), max(right)..
2023. 3. 15.
Udemy : 알고리즘 이분 탐색
Udemy : 알고리즘 이분 탐색 udemy 알고리즘 코딩 테스트 이분 탐색 하나 하나 다 찾는 것이 아닌다 (완전 탐색으로 매우 오래 걸린다) Up & Down 게임이라고 생각하면 된다 정답을 기준으로, 무작위로 고른 숫자가 정답 숫자가 무작위로 고른 숫자 기준으로 더 작은지, 또는 큰지 말해주는 것이다 예) 정답 7 10을 말하면 Down 5를 말하면 Up 즉 값들을 정렬하고, 정렬한 값들 중에 중간 값을 기준으로 탐색을 하는 것이다 예) 1,2,3,4,5,6,7,8,9,10 중 8 찾기 먼저 5를 탐색한다, 7은 5보다 크기 때문에 6~10 중 숫자들을 찾는다 6~10 의 중간값은 8 from bisect import bisect_left, bisect_right array = [0, 1, 2, 3..
2023. 3. 14.
27. 운영체제 [메모리, 캐시]
27. 운영체제 [메모리, 캐시] 출처 : 면접을 위한 CS전공지식 노트(책 / 강의) 메모리 계층 레지스터, 캐시는 CPU 내부에 존재한다 메인 메모리는 RAM을 가리키고, 주기억장치다 일부 하드 디스크의 메모리를 복사해서, 임시 저장 후, CPU에 빠르게 전달을 한 레지스터는 속도가 빠르지만, 용량이 적다 하드 디스크는 속도는 느리지만, 용량이 많다 이런 점들을 보완하기 위해, 메모리 계층 구조를 사용한다 캐시 데이터를 미리 저장해 놓은 임시 저장소이다 빠른 장치와 느린 장치 사이에서 속도 차이를 줄이는 역할을 하는 메모리다 예를 들어서 CPU와 메모리 속도 차이가 많이 나기 때문에, 레지스터를 캐싱 계층으로 둬서, 속도 차이에서 나타나는 병목 현상을 줄인다 메인 메모리도 캐시 메모리와 하드 디스크 ..
2023. 3. 14.