프로그램은 실행 가능한 명령어들의 집합이다. 소프트웨어는 프로그램을 포함하여 해당 프로그램과 관련된 문서들을 모두 아우르는 것이다.
cpu를 의미하며 프로세스를 동작시키고 있는 주체.
현재 프로세서에 의해 동작되고 있는 프로그램을 의미한다. 프로그램과 다른 점은 메모리에 올라와 있는 프로그램이 프로세스이다(능동적). 프로그램은 파일에 저장되어 있는 명령어와 데이터의 집합이다(수동적).
프로그램이 실행되는 과정
우리가 실행 버튼을 누르면 해당 프로그램이 로더에 의해 RAM에 올라가고 cpu의 IPR(명령 주소 레지스터)에 최초 명령 코드가 저장되어 있는 메모리 주소가 저장된다. 그 후 프로세서(CPU)는 IPR에 저장되어 있는 명령 주소를 가지고 RAM에서 해당 명령을 인출(RAN->CPU)하여 IR(명령 레지스터)에 저장한다. IR에 있는 해당 명령을 실행하고 IPR에 다음 명령 코드가 저장되어 있는 메모리 주소를 저장시킨다. 프로세스가 끝날 때 까지 해당 과정을 반복한다.
운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는(support user) 여러 프로그램의 모임이다. 운영체제는 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용프로그램이 유용한 작업을 할 수 있도록 환경을 제공한다.
OS의 핵심 구성 요소이고 좁은 의미로 운영체제이기도 하다. 메모리에 상주하여 컴퓨터 자원을 관리하는 interface이다. user은 직접적으로 하드웨어에 접근할 수 없다. 따라서 프로세스가 실행되는 와중에 하드웨어와 상호 작용이 필요하다면 API를 이용해 system call하여 kernel이 하여금 하드웨어에 접근하게 한다.