2019. 11. 7. 18:24ㆍ연구과제
1. Moore의 법칙 고려 설계
Moore의 법칙은 18~24개월마다 칩에 집적되는 소자의 수가 두배가 된다는 법칙이다. 컴퓨터 설계에는 수년이 소모되므로 프로젝트를 시작해서 끝나는 기간동안 집적되는 소자가 두배 내지 네배가 증가할 것이다. 따라서 종료 시점의 기술을 예상해야 한다.
2. 설계를 단순화하는 추상화
H/W와 S/W 생산성을 높이는 핵심 기술중 하나는 여러 수준에서 설계를 명시하는 추상화(Abstraction)을 사용하는 것이다. 하위 수준의 상세한 사항을 안보이게 하여 상위 수준 모델을 단순화한다.
3. 자주 생기는 일을 빠르게
자주 생기는 일을 빠르게(Common Case Fast)만들면 성능 개선에 도움이 된다. 이 말은 자주 생기는 일이 무엇인지 미리 알고 있다는 것을 가정하고 있지만, 실제로는 세심한 실험과 측정을 거쳐야 할 수 있다.
4. 병렬성을 통한 성능 개선
작업을 병렬적으로 수행하여 성능을 높인다.
5. 파이프라이닝을 통한 성능 개선
병렬성의 특별한 형태. 마치 사람들이 인간 사슬을 생성해서 각자 양동이를 들고 왔다갔다 하는것보다 훨씬 빨리 물을 나를 수 있는것과 비슷함.
6. 예측을 통한 성능 개선
예측이 성공할 확률이 비교적 높은 경우 예측을 해서 미리 일을 수행하는 것이 평균적으로 빠른 경우가 종종 있다.
7. 메모리 계층 구조
최상위 계층에는 비싸지만 작고 빠른 메모리를 이용하고, 하위 계층에는 느리지만 크고 가격이 싼 메모리를 사용하여 성능 향상.
8. 여유분을 이용한 신뢰도 개선
컴퓨터는 빠르기만 해서는 안되고 신뢰할 수 있어야 한다. 장애를 감지하고 장애가 난 소자를 대치할 수 있도록 여유분을 준비하면 신용도(Dependability)를 개선할 수 있다.
컴퓨터 하드웨어는 아주 단순한 저수준의 명령어를 실행한다. 복잡한 응용에서 단순한 명령어까지 내려가려면 높은 수준의 작업을 단순한 컴퓨터 명령어로 번역 또는 해독할 줄 알아야 하는데, 이를 추상화라고 한다.
Application Software <-> Systems Software <-> Hardware
시스템 소프트웨어에는 여러가지가 있으나 핵심이 되는 두 가지는 운영체제와 컴파일러이다.
운영체제의 역할
- 기본적 입출력 작업 처리
- 보조기억장치 및 메모리 할당
- 컴퓨터를 동시에 사용하는 여러 응용들 간 컴퓨터 공유방법 제공
컴파일러는 C, C++ 등 상위 수준 언어를 하드웨어가 실행할 수 있는 명령어로 번역하는 중요한 역할.
High-level language program -> Compiler -> Assembly language program ->
Assembler -> Binary machine language program ( for MIPS )
제일 중요한 추상화 중 하나는 하드웨어와 최하위 소프트웨어 간의 인터페이스이다. 이는 매우 중요한것이므로 컴퓨터의 명령어 집합 구조(Instruction Set Architecture)또는 단순히 구조 라는 별도의 이름이 붙어있다. 입출력 작업, 메모리 할당 및 기타 저수준 시스템 기능 세부사항은 운영체제가 감추어서 응용 프로그래머가 이러한 세세한 부분을 걱정하지 않아도 되도록 해 주는 것이 일반적이다.
'연구과제' 카테고리의 다른 글
[컴퓨터구조] 2. 컴퓨터 성능 (0) | 2019.11.07 |
---|