본문 바로가기

process

프로세스와 스레드의 개념 프로세스(Process) 프로세스란 실행 중인 프로그램을 나타내는 말로서 디스크에 저장 되어 있는 프로그램이 실행 되면 그 프로그램은 자신의 고유한 메모리 공간에 프로그램의 코드가 읽혀질 것이고 CPU는 메모리에 로드된 프로그램의 명령어를 하나하나 읽어서 실행 할 것이다. 그리고 이렇게 실행 중인 상태의 프로그램을 프로세스(process)혹은 태스크(Task)라 부른다. 프로세스가 가지는 특성은? 자원의 소유단위: 각각의 프로세스는 자신의 실행 이미지 로드와 실행에 필요한 추가적인 메모리 공간을 가지고 있어야 할 것이며 이들은 각 프로세스마다 구별되어야 할 것이고 해당 프로세스가 접근 하고자 하는 파일, I/O 장치들에 대해서 또한 프로세스 단위로 할당 받아 관리 되어야 함. 디스패칭 단위: 프로세스는 .. 더보기
Windows Memory / VMMap Fundamentals of Memory Management Windows 물리적 메모리와 가상메모리를 사용 메모리는 페이지로 관리되며 페이지는 기본 4KB로 구성 - 32bit 아키텍처에서 토털 사용가능한 메모리 주소는 4G(2의 32승) 이며 사용자 모드와 커널 모드로 나뉘어 진다. - Page in System space는 커널 모드에서만 접근 가능, 사용자 모드 어플리케이션은 User mode 영역만 접근 할 수 있다. - 64bit 아키텍처에서는 토털 사용 가능한 메모리 주소가 16EB(2의 64승)이나 여러가지 이유로 16TB(2의 44승)만 사용 Virtual Memory 하나의 프로세스에서 가상 메모리는 3개의 카테고리로 나눌 수 있다. (i) private virtual memory – .. 더보기