일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 구름톤
- You are running `create-react-app` 5.0.0
- create-react-app오류
- TypeScript
- Til
- 회고
- which is behind the latest release (5.0.1).
- Today
- Total
비전공 프론트엔드 개발자
TIL. 22.08.01 본문
컴퓨터의 기본구조
- 컴퓨터의 구조 및 기능에 대해 학습합니다.
컴퓨터의 구조 : 하드웨어와 소프트 웨어가 합쳐진 형태이다.
=> 하드웨어 : 전자 회로 및 기계장치로 되어있어 입출력장치, 중앙처리장치(CPU), 기억장치 등으로 구성되어 있음.
=> 소프트웨어 : 그 하드웨어 위에서 제어하며 작업을 수행하는 프로그램
구성요소는 입출력장치, 중앙처리장치, 저장장치가 있다.
입력장치는 컴퓨터가 처리할 수 있는 형태로 명령이 들어오는 물리적인 장치이다. 쉽게 생각하면 키보드 마우스 등 컴퓨터와 연결해서 무언가를 입력할 수 있는 장치.
출력장치는 처리된 데이터를 사람이 알아볼 수 있게 출력해주는 물리적인 장치를 의미. 모니터가 대표적인 예시.
중앙처리장치(CPU)는 크게 산술/논리 연산장치(ALU) 와 제어장치 그리고 레지스터 로 이루어져 있다.
산술장치은 덧셈하는 곳,
제어장치는 프로그램에 따라 명령과 신호를 생성하고(1), 각종 장치의 동작을 제어(2) 하는 곳.
레지스터는 CPU내부 메모리이며, CPU에서 사용하는 데이터를 잠시 저장하는 장소.
저장장치
데이터나 프로그램을 보관하기 위한 일차 저장장치인 주기억장치 와 ( RAM 과 ROM 이 있음 )
주 기억장치를 보조하기 위한 disk,CD,USB 같은 보조기억장치가 있다.
CPU내 레지스터는 용량이 너무 작기 때문에 주 기억장치에 저장해 두었다가 필요할때 꺼내씀.
보조기억장치는 주기억장치에 비해 느리지만 대용량의 기억이 가능하며 현재 불필요한 프로그램은 보조기억장치에 저장가능.
CPU와 Memory
- 데이터를 처리하는 역할인 CPU의 구조
CPU의 구조 ( 산술/논리 연산장치(ALU), 제어장치, 레지스터 )
- 산순/논리 연산장치(Arithmetic Logic Unit)
캐시나 메모리 로부터 읽어 온 데이터를 레지스터라는 CPU전용 기억장소에 저장되며, 저장된 데이터를 이용하여 사칙연산과 같은 산술 연산을 수행함.
- 레지스터(Registar)
CPU 내부에 있는 기억장치. 구분은 2가지로 할 수 있는데 ,
범용 레지스터 : 주로 산술 논리연산 장치에 의해 사용됨.
전용 레지스터 : PC등 특수 목적에 사용됨.
레지스터의 종류로는 3가지가 있는데,
IR ( Instruction Register ) : 현재 실행중인 명령을 기억하는 레지스터
PC (Program Counter) : 다음 번에 실행할 명령어 주소를 기억하는 레지스터
AC (Accumulator) : 연산 결과를 임시로 저장하는 레지스터로 누산기라고도 부름.
-제어장치(Control Unit, CU)
장치들에게 동작을 명령하고 제어하는 장치.
명령어를 해독하여 처리할 수 있게 제어신호를 전송하여 수행하게 명령하는 역할을 담당함.
- 명령어와 명령어 수행 과정, 처리 방식에 대해 학습합니다.
- 수행과정
읽기(Fetch Instruction) : 메모리에서 명령을 가져옴.
해석(Decode Instruction) : 명령을 해석함.
실행(Execute Instruction) : 명령을 수행함.
기록(Write Back) : 수행한 결과를 기록함.
처리방식
CISC : 하나의 기능에 하나의 명령이 있는 개념- 여러 사이클로 명령어를 처리함.- 많은 명령어가 메모리를 참조하는 처리 방식.- 파이프라이닝의 사용이 어려움.- 복잡한 마이크로 프로그램 구조를 갖고있음.
RISC : 컴퓨터 내부족으로 사용하는 명령어 세트를 단순화 시켜서 처리하는 형태의 구조단순한 명령을 조합해서 하나의 기능을 수행하게 됨.- 하나의 사이클로 명령어를 처리함.- 메모리 Load/Store 명령만 처리하는 방식임.- 파이프라이닝, 슈퍼스칼라의 사용이 가능함.- 복잡한 컴파일러 구조를 갖고있음.
- 메모리의 성능 및 종류
메모리의 속도는 메모리가 CPU와 데이터를 주고받는 시간을 말한다. 이를 엑세스라 부르며 단위는 ns(nano-second) - 10억분의1로써 메모리 속도의 기준이 된다. ( 속도가 빠르다 === 메모리 성능이 좋다. )
리프레시 시간 : 메모리는 일정 시간마다 재충전을 해줘야함.(안그러면 정보가 사라짐.) 그 일정시간을 리프레시 시간이라고 한다.
( 한번 읽고나서 다시 읽을 수 있는 사이 시간을 말함. )
메모리 엑세스 시간 : 데이터를 읽어오라는 명령을 받고 데이터를 읽기 시작하기까지 시간을 말함.
( 명령어를 처리 할 때 명령어가 갖는 주소를 보냄. 그러면 CPU에 그 주소에 해당하는 값을 가져오게 되는데 걸리는 시간 )
사이클 시간 : 메모리 작업이 완료와 동시에 대기 신호를 내놓을 후 다음 신호를 받을 준비가 되었다는 신호를 주기까지의 시간.
( 리프레시 시간 + 메모리 엑세스 시간 )
메모리의 종류
- 주기억장치
RAM : 컴퓨터의 전원이 꺼지면 내용이 휘발됨.(보조기억장치가 필요함.) RAM의 크기는 프로그램의 수행 속도에 영향을 준다.
CPU에서 직접 접근이 가능한 유일한 저장 장치.
ROM : 대부분 읽을 수만 있는 장치로 구성되어 있음. 전원이 끊겨도 내용이 보존됨.
- 보조기억장치
자기디스크, 광 디스크, 플래시 메모리
'TIL' 카테고리의 다른 글
뤼른과 nextJS useRouter 로 밀당하기. (0) | 2023.05.21 |
---|---|
TIL. create-react-app 오류 (0) | 2022.09.09 |
TIL.22.07.25 (0) | 2022.07.25 |
TIL. 22.06.30 (0) | 2022.07.01 |
TIL. 22.06.29 UX & UI (0) | 2022.06.30 |