가상메모리와 페이지 교체 알고리즘
·
👶🏻 CS/Operating System
가상 메모리란메인 메모리의 크기는 한정되어 있기 때문에, 물리적 메모리보다 큰 프로세스는 그대로 실행할 수 없다.그렇다면 이런 경우 프로세스는 어떻게 실행될까?가상 메모리는 실제 물리적 메모리(RAM)보다 더 많은 메모리를 사용할 수 있도록 하는 메모리 관리 기법이다.즉, 가상 메모리는 물리적 메모리와 독립적인 논리적 주소 공간을 제공하여, 실제 메모리 크기와 관계없이 더 큰 주소 공간을 사용할 수 있게 해준다.가상 메모리는 필요한 부분만 메모리에 올림으로써 메모리에 올라가는 프로세스의 크기를 줄이는 요구 페이징 기법을 사용한다. 요구 페이징(Demand Paging)이란가상 메모리는 메모리를 고정된 크기로 나눠서 관리하며 이를 페이지라고 부른다.요구 페이징이란 프로그램이 실행될 때 모든 페이지를 처음부..
프로세스와 스레드
·
👶🏻 CS/Operating System
프로세스와 스레드란?프로그램프로그램은 윈도우의 .exe 파일이나 Mac의 .dmg 파일과 같은 컴퓨터에서 실행할 수 있는 파일을 통칭한다.,단 아직 실행되지 않은 상태의 코드 덩어리를 의미한다. 프로세스프로세스는 실행 중인 프로그램을 말한다, 모든 프로그램은주소 공간, 파일, 메모리 등 자원이 필요한데 운영체제로부터 이 자원을 할당받은 프로그램을 의미한다. 스레드스레드는 프로세스 내에서 동시에 진행되는 흐름의 단위이다. 과거에는 프로그램을 실행할 때 하나의 프로세스만 사용했다.예를 들어, 파일을 다운로드하면 다운로드가 끝날 때까지 다른 작업을 수행할 수 없었다.기술이 발전하며 프로그램이 점점 더 복잡해지면서 단일 프로세스로는 한계가 있었고, 여러 프로세스를 사용하면 메모리를 낭비하고 CPU 자원을 중복..