3장. 일반적인 개념들

 

3.1. 프로그램이 OS상에서 실행되는 순서 (메모리 탑재, 프로세스 실행)
컴퓨터 운영체제에 프로그램을 탑재하고 실행하면, 다음과 같은 순서로 일이 진행 된다.

1) 사용자는 특정 프로그램을 실행하는 명령어를 입력한다. 혹은 프로그램 아이콘을 클릭한다.
2) 운영체제는 현재 디렉토리에서 프로그램의 파일명을 찾는다. 만약 찾지 못하면 Path로 지정해놓은 프
로그램 목록에서 프로그램의 파일명을 찾는다. 프로그램 목록에서도 못찾으면 운영체제는 에러 메시지를
발생시킨다.
3) 프로그램의 파일명을 찾았다면, 디렉토리로부터 파일의 크기, 하드 디스크내에 프로그램의 물리적인
위치등 파일에 대한 기본적인 정보를 추출한다.
4) 운영체제는 사용 가능한 메모리 공간을 찾아 그 프로그램의 파일을 메모리에 탑재한다. 운영체제는
그 프로그램을 위해 메모리의 특정한 블록을 할당하고 프로그램의 크기나, 위치 등에 대한 정보를
Descriptor Table에 저장시킨다.
5) 운영체제는 중앙처리장치가 해당 프로그램의 첫 기계어를 실행 하도록 분기 명령어를 실행한다. 그
프로그램이 실행되면 그것을 프로세스(Process)라고 부른다. 운영체제는 그 프로세스에게 실행 되는 동
안에는 프로세서ID라는 식별 번호를 부여한다. 이는 프로세스를 추적을 가능하게 한다.
6) 프로세스는 스스로 실행 되며, 그 프로세스를 추적하고, 시스템 자원의 요구(메모리, 디스크 파일,
입출력 장치등)를 받는 것은 운영체제의 몫이다.
7) 해당 프로세스가 종료되면, 핸들은 제거 되고 사용되던 메모리는 다른 프로그램을 위해 해제 된다.

 

3.2. 마지막으로.

 2장에서 공부한 80386에서 현재 나온 최신 CPU인 인텔 듀오2 CPU까지를 통틀어서 모든 32비트 CPU를 IA-32 프로세서라고 한다. 비록 프로세서 성능과 기능면에선 비교할 수 없을 만큼 많은 발전이 있었지만, 이러한 것은 IA-32 표준 뒤에 숨겨져 있다. 프로그래머의 입장에서 보면 IA-32 구조는 80386이후로 실질적으로 바뀐것이 거의 없다. 예외가 있다면 멀티미디어 처리를 위한 고성능 명령어들이 추가 되었다는 것이다. 이런 이유로 80386의 구조는 매우 중요하다. 때문에 80386 프로세서의 내용이 이해가 잘 가지 않는다면 다시 한번 꼼꼼히 참고 하여 보기 바란다. 인터넷에서도 이에 대한 많은 자료를 찾을 수 있고, 친절하게 인텔 메뉴얼 까지 존재한다. (인텔 CPU를 공부 하기 위해서는 이 메뉴얼은 필수 적이다. Intel 홈페이지에서 찾으면 무료로 PDF 파일을 다운로드 받을 수 있다.)

 


'80x86 프로세서' 카테고리의 다른 글

2장. 80386 프로세서 (3/3)  (0) 2010.04.12
2장. 80386 프로세서 (2/3)  (0) 2010.04.12
2장. 80386 프로세서 (1/3)  (0) 2010.04.12
1장. 8086/8088 프로세서 (2/2)  (2) 2010.04.12
1장. 8086/8088 프로세서 (1/2)  (3) 2010.04.12

+ Recent posts