시스템 콜2 [OS] 04. 프로그램의 구조와 실행 1. 프로그램의 구조와 인터럽트 프로그램이 CPU에서 명령을 수행하려면 해당 명령을 담은 프로그램의 주소 영역이 메모리에 올라가 있어야 한다. 프로그램의 주소 영역은 크게 코드(code), 데이터(data), 스택(stack)영역으로 구분된다. 코드 : 프로그램 함수들의 코드가 기계어 명령 형태로 변환되어 저장되는 부분 데이터 : 전역 변수등 프로그램이 사용하는 데이터는 저장하는 부분 스택 : 함수가 호출될 때 호출된 함수의 수행을 마치고 복귀할 주소 및 데이터를 임시로 저장하는 부분 인터럽트의 동작 원리는 함수의 호출과 비슷하다. A 프로그램이 CPU를 할당받아 명령을 수행중일 때 인터럽트가 발생할 경우 A는 현재 수행 중인 명령의 위치를 저장해놓는다. 그 후 인터럽트 처리루틴으로 넘어가 인터럽트를 처.. 2021. 12. 20. [OS] 03. 컴퓨터 시스템의 동작 원리 1. 컴퓨터 시스템의 구조 컴퓨터는 내부장치인 CPU, 메모리와 외부장치인 디스크, 키보드, 마우스, 모니터 등으로 구성된다. 컴퓨터는 외부장치에서 내부장치로 데이터를 읽어와 각종 연산을 수행한 후, 그 결과를 외부장치로 다시 내보내는 방식으로 업무를 처리한다. 컴퓨터 내부로 데이터가 들어오는 것을 입력(input), 외부장치로 데이터가 나가는 것을 출력(output)이라고 한다. 메모리 및 입출력장치 등의 각 하드웨어 장치에는 이들을 제어하는 작은 CPU인 컨트롤러라는 것이 존재한다. 운영체제는 각종 자원들을 관리해야 하므로 컴퓨터의 전원이 켜진 순간부터 항상 메모리에 올라가 있다. 하지만, 전체가 올라가지 않고 운영체제 중 핵심적인 부분만 항상 메모리에 올라가 있으며 이 부분을 커널(kernel)이라.. 2021. 12. 14. 이전 1 다음