https://youtu.be/2i3dInwVeUM?si=O1xfoCB3dDkDiEqg 14:00 분까지의 요약본 컴퓨터 자원의 이해컴퓨터에서 자원이라고 하는 부분은 시스템이 운영될 때 필수적인 요소를 의미한다. 특히 전산 자원은 CPU와 메모리로 대표되며, 이 글에서는 컴퓨터 자원의 주요 개념과 운영체제에서 이를 어떻게 관리하는지에 대해 살펴본다.1. 전산 자원의 종류: CPU와 메모리전산 자원은 크게 두 가지가 있다.- CPU: 연산의 주체로서 여러 코어(Core)를 가지고 있으며, 실제 계산 작업을 수행한다.- 메모리 (Virtual Memory): RAM과 HDD를 조합하여 운영체제가 관리하는 가상 메모리 공간으로, 프로세스 단위로 할당된다.Windows 운영체제에서는 스레드를 기준으로 CPU를 ..
https://www.youtube.com/watch?v=x-Lp-h_pf9Q&t=0s프로세스와 스레드 개요 Process 는 단위이다. 어떤 관리의 단위이며, 관리의 주체는 OS이다. 프로세스 라고 하는것은 기본적으로 연산거리(명령어)의 집합 이다. 연산은 연속적이기 때문에 이어져서 하나의 흐름을 만든다.이 흐름은 프로세스 수준에서 기본적으로 하나 존재하며, 이를 컨텍스트(Context) 또는 플로우(flow)라고 부르기도 한다. 연산은 외부 자극에 의해 변경될 수도 있다. 기본적으로 하나의 프로세스에는 반드시 하나의 스레드가 존재한다. 그러나 이 흐름이 하나가 아닌 여러 개로 분리될 수 있다. 한 프로세스 내부에 두 개 이상의 독립적인 실행 흐름이 존재하여, 동시에 또는 각각 작동하는 경우를 멀..
앞서 메모리컨트롤러는 CPU 의 행위를 관찰하고 있다가, 필요한 자료를 미리 가져와 처리 속도를 향상시킨다는 것을 알게 되었다. 적중률은 90%이상이므로, CPU 는 정보를 직접 검색하기 전, 기본적으로 메모리컨트롤러에게 먼저 묻게 된다. 반대의 관점에서 본다면 '시키지도 않은 일을 메모리 컨트롤러가 하고 있다'. 는 것. CPU 게이트이 문제는 CPU 게이트라는 사건으로 이름 붙여지며 주목을 받게 된다. CPU를 돕기 위해 일하던 메모리 컨트롤러는 CPU 에게 빠르게 정보를 넘겨주기 위해 자료를 가져오게 된다. 핵심은 시키지도 않은 일을 하게 되어, 이것이 보안사고로 이어진다는 것. 예시 이 사건을 비유적으로 나열하자면 이렇다. 호텔에 대통령이 방문하여 A동 202호 에 머무르게 된다(함구해야 하는 정..
CPU의 캐시 메모리는 성능을 높이기 위한 강력한 수단입니다. 그리고 CPU와 RAM의 속도차이를 극복하기 위해 존재합니다. 그런데 최근에는 CPU의 연산능력에 RAM이 일정 수준 개입하는 방향으로 전환이 일어나고 있습니다. https://youtu.be/aApNYVy1TNU?si=T8u-cv3ucP2xa4EZ CPU와 RAM 속도 차이와 캐시 메모리의 역할 변화CPU는 매우 빠르게 동작하며, 1ns 단위로 작업을 수행하는 반면, RAM은 상대적으로 느려 50ns가 소요된다. 이 속도 차이를 해결하기 위해 캐시 메모리를 활용하게 되었다. L1, L2, L3 캐시를 징검다리처럼 배치하여 RAM과 CPU를 연결해 연산을 효율적으로 수행했다. 그러나 이 패러다임, 즉 CPU가 연산을 담당하고 RAM이 데이터..
CPU가 성능을 높이는 방법으로 클럭속도를 높이거나 코어 개수를 늘립니다. 그러나 내부적으로 보면 더 재밌는 이야기가 숨어 있습니다. 바로 예측해서 연산한다는 것입니다. https://youtu.be/Fnvlujxbqss?si=b2_xivl4myIgkjyQCPU와 RAM 사이의 속도 차이 CPU는 연산장치이며, 중요한 것은 속도이다. 속도가 빠를수록 연산의 양이 늘어나고 처리 성능이 좋아진다. 그래서 클럭 속도를 높이는 방향으로 개발이 진행되다가, 최근에는 코어의 개수를 증가시키는 방식으로 발전하고 있다. CPU의 코어가 연산을 담당하며, 연산에 필요한 데이터는 기본적으로 RAM에 저장된다. 이 데이터를 CPU의 영역으로 옮기고, 연산 후 다시 RAM으로 돌려보내는 작업을 반복한다. 문제는 CPU와 RA..