CPU의 기능 CPU는 '프로그램 수행'이라는 컴퓨터의 중추적 기능을 수행한다. 이를 위해 CPU는 메모리에 저장되어 있는 프로그램 코드인 명령어들을 실행하고 이러한 명령어들을 수행하기 위하여 여러 세부적인 동작들을 순서대로 나열하여 진행한다. 명칭 설명 명령어 인출(Instruction fetch) 메모리로부터 명령어 읽기 명령어 해독(Instruction decode) 수행할 동작을 결정하기 위해 명령어 해독 데이터 인출(Data fetch) 명령어 실행을 위해 데이터가 필요한 경우, 메모리 혹은 I/O 장치에서 데이터를 읽기 데이터 처리(Data process) 데이터에 각 연산을 수행 데이터 저장(Data store) 결과 저장 ※ 1, 2번 동작은 모든 명령어의 공통 수행 과정이다. 하지만 3~..
스레드의 동작 원리 멀티스레드, 싱글스레드라고 부르며 작업을 동시에 처리하는 기술이라고만 알고 있는 스레드에 대해 조금 더 알아보자. 우선 단일 코어 CPU가 달린 컴퓨터가 있다고 생각하자. 이런 환경에서 프로세스나 여러 스레드가 동시에 실행될 수 있을까? 만약 A 작업과 B 작업을 동시에 진행시킨다면 어떻게 처리할까. 우선 사람이라면 보통 작업의 순서가 정해져있지 않는 이상 하나의 작업을 완료하고 다른 작업을 진행할 것이다. 하지만 우리가 다루는 컴퓨터는 사람과 동일하게 생각하지 않는다. 컴퓨터는 하나의 작업을 하면서 여유가 생기는 찰나의 순간 다른 작업을 진행하려 한다. 즉, 여러 프로세스와 스레드들을 동시에 실행하는 운영체제는 일정 시간마다 번갈아가며 스레드들을 실행한다. 이렇게 스레드를 변경하며 ..
- Total
- Today
- Yesterday
- 운영체제
- 멀티스레드
- 레지스터
- 인터럽트
- thread
- 알고리즘
- 백준
- 게임수학
- CPU
- 함수
- 크기
- 할당
- c++
- malloc
- 클래스
- 프로세스
- 초기화
- 스레드
- static_cast
- 구조
- 명령어
- dynamic_cast
- 컴파일
- 입출력
- 상속
- const
- 포인터
- New
- 메모리
- 수학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |