일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- 병행성
- 멀티쓰레드
- 영속성
- I/O장치
- 동적계획법
- 락
- 스케줄링
- 렌더링 파이프라인
- 백준
- OS
- 다이나믹프로그래밍
- 타입 객체
- 병행성 관련 오류
- 그리디 알고리즘
- codility
- 다이나믹 프로그래밍
- 그리디알고리즘
- directx
- 멀티프로세서
- 파일시스템 구현
- 컨디션 변수
- 디자인패턴
- 쓰레드
- DirectX 12
- 운영체제
- Direct12
- 프로그래머스
- DirectX12
- 자료구조
- Today
- Total
목록Computer Architecture (3)
기록공간

이번에는 프로그램이 메모리에 적재되어 프로세스의 상태로 실행될 때, 메모리 공간에서 발생하는 일들에 대해 정리해보도록 하겠다. RAM에 할당된 프로세스 공간 프로세스는 RAM에 일부 공간을 할당받아 생성된다. 그렇게 할당받는 공간은 크게 4가지 영역으로 구성된다. 1. 코드(Code) 영역 : 실행 파일을 구성하는 명령어들이 올라가는 영역 코드가 들어가는 부분이므로 쓰기가 금지된 영역 수정될 것이 없으므로 고정(Static)된 크기를 가진다. 2. 데이터(Data) 영역 : 전역 변수들을 저장하는 영역 사실 데이터 영역은 초기화된 값이 저장되는 데이터 영역과 초기화되지 않은 값이 저장되는 bss 영역이 구분된다. 그렇게 해서 크게 5가지로 나누는 경우도 있다. 3. 힙(Heap) 영역 : 동적(Dynam..

동작 원리 이번에는 응용 소프트웨어, 시스템 소프트웨어, 하드웨어를 아울러 컴퓨터가 켜지고, 프로그램이 실행되는 과정을 정리한다. 컴퓨터가 켜지는 과정 CPU는 컴퓨터에 전원이 들어오면 제일 먼저 메모리의 0번지 주소의 데이터를 읽는다. 메모리의 0번지에는 ROM(Read-Only Memory)이라는, 컴퓨터를 구동하기 위한 기본 정보가 담긴 메모리가 있다. ROM은 컴퓨터의 전원을 꺼도 메모리가 지워지지 않아, 컴퓨터가 켜지면 이 곳의 정보를 읽어올 수 있다. 따라서 전원이 켜지면 ROM에서 읽어 들인 내용을 바탕으로 하드웨어의 상태를 확인하는 POST(Power On Self Test)를 수행한다. 그리고 운영체제를 로드하기 위해 디스크의 첫번째 섹터인 마스터 부트 레코드(Master Boot Rec..

컴퓨터 하드웨어는 아주 단순한 저수준의 명령어만을 실행할 수 있다. 오로지 0과 1로 이루어진 저수준 명령어를 기계는 알아듣고 수행할 수 있다. 따라서 사용자들이 일반적으로 사용하는 복잡한 응용 프로그램(소프트웨어)은 사실 하드웨어에서 실행되기 위해 번역의 과정을 거친다. 높은 수준의 작업을 저수준의 명령어로 번역하는 여러 단계의 과정에는 시스템 소프트웨어가 필요하다. 이러한 소프트웨어들은 계층적으로 구성된다. 크게 하드웨어와 응용 소프트웨어로 구분할 수 있고 이 사이에는 여러 가지 시스템 소프트웨어가 존재한다. 1. 사용자가 컴퓨터를 켜서 사용하는 프로그램들 = 응용 소프트웨어 2. 응용 소프트웨어가 하드웨어에서 실행되도록 만드는 소프트웨어 = 시스템 소프트웨어 3. 실제 소프트웨어가 실행되는 곳 = ..