회사원 처럼 일을 처리하는 역할(중앙처리장치)이다.
구성요소
- Core: 각종 연산을 수행하는 핵심요소 (Tread 단위)
- Cache Memory
- Contoroller
컴퓨터 안에 데이터를 저장하는 장소
그래픽 처리를 용이하도록(단순반복 작업)
: 실행가능한 파일 (코드로 작성한 파일)
statement: 실행가능한 독립적인 코드 조각(expression- 계산하여 값을 만드는 코드/ keyword-명령어)
identifier: 값의 위치
: 운영체제
: Hardware를 제어하고 응용 프로그램을 실행하는 "기본 프로그램"
브라우저를 실행하면 하드웨어의 일정 부분을 할당받게 되고 프로그램이 실행 될 수 있게 된다.
:프로그램이 OS에 의해 영역을 할당 받고 실행중인 것이다.
그 안에는 코드, 데이터, 스택, 힙이 있다.
- Code: PC(다음번에 실행될 명령어의 주소를 가지고 있는 레지스터, 코드저장, 주소를 가지고 명령어를 실행할 수 있게 한다)
- Data: global variable, static variable 저장
- Heap: manage memory, allocates dynamic memory(메모리를 관리하는 것, 메모리라고 이해하면 편하다. heap을 통해 메모리를 할당하기도 한다.)
JS엔진이 실행되면 메모리힙과 콜스택이 필요한 것처럼 Process 에 Stack 과 Heap이 있다.- Stack(Tread): Process가 할당한 자원을 이용하는 실행의 위치, 임시 data(local variavles, return address) 저장 / Tread: 코드가 실행되는 흐름, 명령어 실행 흐름)
CPU는 복잡한 작업을 중앙에서 처리하는 Unit
GPU는 상대적으로 복잡한 작업을 병렬적으로 처리하는 Unit
이러한 머신이 기반이 되어 운영체제를 실행하게 된다. 운영체제는 프로그램의 한 종류이다. 프로그램은 실행가능한 파일 코드이다. 운영체제는 하드웨어를 제어하고 응용 프로그램을 실행한다. 그 응용프로그램 종류 중에 브라우저라는 것이 있다.
OS안에서 이러한 프로그램을 실행한 것이 Process 이다. 이 안에는 Code, Data, Stack, Heap이 있다. Stack 은 코드들이 진행되는 흐름이고 그 흐름은 Tread이다.