CHAPTER 0 컴퓨터의 작동원리
주 기억장치(Primary Storage – Computer memory)
- Random-Access Memory(RAM) : 전원을 끄면 데이터가 사라짐. Volatile type of memory.
- 비교) Read-Only Memory(ROM)
- 왜 Random-Access 이냐면, Ram 이 순차적으로 접근하기 보다 주소를 알면 곧바로 그곳으로 접근하는 것이 가능하기 때문이다.
그래픽스 카드. GPU(Graphics Processing Unit)
자체적인 cpu 와 메모리를 가지도록 발전함.
보조기억장치(Secondary Storage)
- HDD(Hard Disk drive)
- SSD(Solid-state Drive)
- FDD(Floppy Disk Drive): 우리가 아는 플로피 디스크. 얘보다 딱딱해서 HDD 가 Hard 가 이름으로 붙었고, 얘가 A 드라이브, B 드라이브를 썼었기 때문에 오늘날 컴퓨터가 C 드라이브부터 시작하는, 역사적인 저장장치. 이것보다도 전엔 자기 테이프를 썼었다.
부팅 절차:
- 전원 공급
- 부트 프로그램 실행
- 하드웨어 검사
- 운영 체제 로드
- 운영 체제 실행
cpu 는 주기억장치(Ram) 과만 소통한다. 운영체제도 보조기억장치에 저장되어 있기 때문에, 운영체제를 실행 시키려면 Ram 으로 운영체제를 복사해와서 cpu 와 소통하면서 실행시킨다.
운영체제가 해주는 일들:
하드웨어를 어떻게 이용할 것인지 운영체제와 소통하는 것을 중간에서 도와주는 것이 커널(Kernel) 이다. 커널은 ‘핵심’ 이란 뜻이 있는데, 커널이 있기에 운영체제가 컴퓨터 자원을 어떻게 배분할지 하드웨어와 소통할 수 있으며, 개발자들도 일일이 하드웨어 관리할 필요 없이 운영체제에 의존할 수 있다.
컴퓨터가 2진수 사용하는 이유:
에디슨 필라멘트 전구 효과 진공관 트랜지스터 순으로 발달함. -극의 전자를 + 극 쪽으로 이동시키느냐 안 시키느냐 의 두가지 경우의 수에 따라 계산이 되기 때문에 이진법으로 발달.
컴퓨터 메모리의 기본 구조:
CPU 와 RAM 은 3가지 버스를 통해 소통한다. 3가지 버스를 System bus 라고 통칭하며, address bus, control bus, data bus 가 있다. address bus 는 메모리 주소가 오가는 통로고, data bus 는 데이터가 오가는 통로다. cpu 와 RAM은 control bus 를 통해 데이터를 저장할지, 받아올지 정하고, 각기 상황에 따라 주소와 데이터를 교환한다. 이렇게 메모리 주소가 오가는 통로를 통해 cpu 가 데이터를 저장하거나 불러오기 때문에 메모리 주소를 컨트롤하는 것은 아주 중요하고, 그래서 나중에 배울 ‘포인터’ 라는 개념도 중요한거다.
CPU의 기본구조:
구성요소: 산술 논리 장치(ALU, Arithmetic Logic Unit) + 제어 장치(Control Unit) + 여러가지 레지스터들(Registers) 로 이루어짐.
* 레지스터 종류:
- 주소 레지스터 : 읽거나 쓸 메모리 주소 저장.
- 프로그램 카운터 : 다음 명령어의 메모리 주소 저장
- 데이터 레지스터 : 메모리에서 읽어온 데이터 저장
- 명령어 레지스터 : 메모리에서 읽어온 명령어 저장
- 어큐뮬레이터 : 연산에 사용되는 데이터 저장.
CPU 가 일하는 방법
소프트웨어 개발의 7가지 단계:
- 목적 정의
- 프로그램 설계
- 코드를 작성
- 컴파일 한다.
- 실행시켜본다.
- 시험해보고 오류가 있다면 수정
- 프로그램을 유지하고 개선해 나간다.
'개발공부(C, C++)' 카테고리의 다른 글
따배씨(따라 배우는 C언어_홍정모) Chapter6 (0) | 2019.12.25 |
---|---|
따배씨(따라 배우는 C언어_홍정모) Chapter5 (0) | 2019.12.25 |
따배씨(따라 배우는 C언어_홍정모) Chapter4 (0) | 2019.12.25 |
따배씨(따라 배우는 C언어_홍정모) Chapter3 (0) | 2019.12.25 |
따배씨(따라 배우는 C언어_홍정모) Chapter2 (0) | 2019.12.25 |