2024. 4. 26. 11:01ㆍCS 지식/컴퓨터 구조
1.2 컴퓨터 구조 분야의 일곱 가지 위한 아이디어
- Use Abstraction to Simplify Design
- Make the Common Case Fast
- Performance via Parallelism
- Performance via Pipelining
- Performance via Prediction
- Hierarchy of Memories
- Dependability via Redundancy
위의 내용중 3,4 번은 추후 장에서 자세하게 다룰 예정이다
1.3 프로그램 밑의 세계
모든 프로그램은 복잡한 수백만줄 이상의 코드로 구성되며, 여러가지 라이브러리를 사용한다. 하지만 컴퓨터 하드웨어는 아주 단순한 저수준의 명령어를 실행할 뿐이다. 이것이 1.2.1의 Abstraction의 가장 큰 예이다.
이러한 소프트웨어들은 계층적으로 구성되는데 아래의 그림과 같이 존재한다. 이때 System Software(1)는 Hardware와 Application software 사이에 존재한다.
System Software에는 여러가지가 존재하지만, 가장 핵심 두가지는 운영체제와 컴파일러다.
운영체제
- 사용자 프로그램과 하드웨어 간의 인터페이스 역할을 하면서 각종 서비스와 감독 기능을 제공.
- 기본적 입출력 작업의 처리
- 보조기억장치 및 메모리 할당
- 컴퓨터를 동시에 사용하는 여러 응용들 간의 컴퓨터 공유 방법 제공
- 예로는 Windows, Linux, iOS, Android 가 있다.
컴파일러
- C, Java 와 같은 상위 수준 언어로 작성된 프로그램을 하드웨어가 실행할 수 있는 명령어로 번역하는 일
상위 수준 언어에서 기계어까지
어셈블리 언어: 기계 명령어를 기호 형태로 표현한 것
기계어 : 기계 명렁어의 이진 표현
어셈블러 기호로 된 명령어를 이진수 프로그램으로 번역하는 프로그램
1.4 케이스를 열고
컴퓨터의 고전적 구성요소
- 입력
- 출력
- 메모리
- 데이터패스
- 제어유닛 (4,5 번을 합쳐서 프로레서라고 부르기도 한다)
상자를 열고
- 집적회로(IC) : 수천만 개의 트랜지스터가 결합된 부품
- 프로세서 : 프로그램의 지시대로 일을 하는 부분
- 데이터 패스 : 산술 연산을 수행하는 프로세서 구성요소
- 제어 유닛 : 프로그램의 명령어에 따라 데이터패스, 메모리, 입출력장치에 지시를 하는 프로세서 구성요소
- CPU : 데이터패스와 제어유닛으로 구성된 컴퓨터의 핵심 부분, 숫자를 더하거나 검사하고 입출력장치에 신호를 보내 활성화 하는 일을 함
- 메모리: 실행중인 프로그램과 프로그램 실행에 필요한 데이터의 저장소
- DRAM : 집적회로로 만든 메모리의 일종, 어떤 위치든지 임의로 접근 가능
- 캐시 메모리: 느리고 큰 메모리의 버퍼로 동작하는 작고 속도 빠른 메모리
- SRAM : 직접회로로 만들어 지고, DRAM보다 빠르면서 집적도가 낮은 메모리
데이터의 안전한 저장소
- 메인 메모리 : 실행 중인 프로그램을 저장하는 휘발성 메모리
- 보조기억장치 : 실행중이 아닌 프로그램과 데이터를 저장하는 비휘발성 메모리
- 자기디스크: 자성 기록 매체가 코팅된 회전 원반으로 구성된 비휘발성 메모리.
- 플래시 메모리: DRAM 보다 싸지만 느리고, 자기디스크 보다는 비싸고 빠르다.
컴퓨터 간의 통신
- 통신 : 컴퓨터끼리 고속으로 정보를 주고 받을 수 있다.
- 자원 공유 : 컴퓨터마다 입출력 장치를 따로따로 갖출 필요 없이 네트워크 상의 모든 컴퓨터가 입출력장치를 공유할 수 있다.
- 원격 접근 : 컴퓨터들을 연결하면 멀리 떨어져 있는 컴퓨터도 쉽게 이용할 수 있음
1.5 프로세서와 메모리 생산 기술
IC가 만들어 지는 과정
- 트랜지스터 : 전기로 제어되는 온/오프 스위치
- 전기의 양도체( 초소형 구리나 알루미늄 전선)
- 전기 절연체 ( 플라스틱 피복이나 유리)
- 조건에 따라 도체가 되기도 하고 절연체가 되기도 하는 물체
- VLSI: 수십만 내지 수백만 개의 트랜지스터를 포함하고 있는 장치
- silicon crystal ingot를 얇게 잘라 wafer를 만든다
- wafer에 화학 물질을 첨가하여, 부분 부분을 트랜지스터, 도체, 절연체로 바꾸는 일련의 공정을 거친다
- wafer를 컴포넌트(die) 별로 자른다
- die를 패키징 한다.
직접회로의 가격은 다음과 같이 표현할 수 있다
(1) System Software : 공통적으로 필요한 서비스를 제공하는 소프트웨어. 운영체제, 컴파일러, 로더, 어셈블러가 이에 속한다.