개발자꿈나무
컴퓨터 시스템의 구성요소 본문
- 하드웨어 (H/W)
- 중앙처리장치 (CPU; Central Processing Unit)
- 컴퓨터 시스템에 부착된 모든 장치의 동작을 제어하고 명령을 실행하는 장치
- 컴퓨터 시스템 전체를 제어하는 제어장치와 계산을 담당하는 연산 장치로 구성되며, 임시기억장치인 레지스터를 포함
• 제어장치
- 주기억장치로부터 적절한 순서로 명령어를 인출 및 해독하여 컴퓨터 시스템에 연결된 장치에 제어신호를 보냄
- 모든 장치는 제어장치가 보낸 제어신호에 따라 주어진 명령어를 실행
• 연산장치 = 실행장치 (execution unit), 산술논리장치 (ALU : Arithmetic Logic Unit)
- 제어신호에 따라 명령어가 의도하는 대로 데이터를 실행하기 위해 CPU 내부에서 데이터를 처리하는 장치
- 산술연산(사칙연산)과 논리연산(NOT, AND, OR, XOR 등)을 수행
• 레지스터
- 데이터를 처리하는 동안 사용할 값이나 연산의 중간 결과를 일시적으로 기억하는 고속 기억장치 - 기억장치 (memory)
• 주기억장치
- 컴퓨터 시스템에서 즉각적으로 수행되는 프로그램과 수행 시 필요한 데이터를 기억
•보조 기억장치
- 반영구적으로 데이터를 저장
- CPU와 직접 정보를 교환할 수 없으므로 주기억장치로 옮겨진 후 처리 - 입출력장치
• 입력 장치
- 컴퓨터에서 처리할 데이터를 외부에서 입력하기 위한 장치
- 제어장치의 명령에 따라 인간이 사용하는 문자, 숫자, 소리 등과 같은 정보를 읽어 컴퓨터가 사용하는 0과 1로 코드화된 정보로 변환하여 컴퓨터가 처리할 수 있도록 기억장치로 전송
• 출력 장치
- 컴퓨터에서 처리한 데이터를 외부로 보내기 위한 장치
- 제어장치의 명령에 따라 컴퓨터가 사용하는 0과 1로 구성된 데이터를 인간이 사용하는 문자, 숫자, 소리 드오가 같은 데이터로 변환하여 외부로 보냄
* 컴퓨터의 기본 동작
1. 입력장치로부터 명령이나 데이터 정보를 받아 주기억장치로 전달하고 저장
2. 주기억장치에 저장된 명령어나 데이터는 중앙처리장치의 제어에 따라 인출
3. 인출된 프로그램이나 데이터는 중앙처리장치에 의해 해독되고 실행
4. 실행된 데이터나 정보는 주기억장치 또는 보조기억장치에 저장되고 출력장치를 통해 출력
Q. 컴퓨터 시스템 구성요소 사이의 흐름을 데이터 흐름과 제어 흐름으로 구분하라

-> 제어장치에 연결된건 제어 흐름! 그외에 연결된건 데이트 흐름이라고 보면 됨
a: 제어 장치와 입력 장치가 연결됐으므로 제어 흐름
b : 입력 장치와 주기억장치가 연결됐으므로 데이터 흐름
c : 데이터 흐름
d : 제어 흐름
e : 제어 흐름
f : 데이터 흐름
g : 제어 흐름
h : 제어 흐름
i : 데이터 흐름
j : 제어 흐름
- 소프트웨어 (S/W)
- 컴퓨터 소프트웨어는 특정한 외형이 없는 정보에 해당되는 명령과 데이터를 나타내며, 컴퓨터의 작동과 프로그램에 의해 수행되고 있는 기능을 말함
- 컴퓨터 하드웨어가 명령을 효과적으로 수행할 수 있도록 프로그래밍 언어를 사용하여 작성한 프로그램
- 시스템 소프트웨어
- 컴퓨터의 하드웨어와 소프트웨어의 기능이 효율적으로 실행되도록 이들을 관리하고 제어하는 프로그램의 총칭
• 운영체제 : 컴퓨터 자원을 관리하고 응용 프로그램의 실행 환경을 제공하는 소프트웨어
• 장치 드라이버 : 컴퓨터에 연결된 주변 기기를 제어하는 운영체제 모듈
• 컴파일러와 인터프리터 : 고급언어로 작성된 원시 프로그램을 저급언어로 변환하는 소프트웨어
• 링커 : 다수로 분할하여 작성된 프로그램에 의해 생성된 목적 프로그램 또는 라이브러리 루틴을 결합하여 실행 가능한 하나의 프로그램으로 연결하는 소프트웨어
• 로더 : 디스크와 같은 저장장치에 보관된 프로그램을 읽어 주기억장치에 적재한 후 실행 가능한 상태로 만드는 소프트웨어
- compile and go : 번역기가 로더의 역할까지 담당
- 절대로더 : 번역시 미리 지정한 번지에 프로그램과 데이터를 적재
- 상대로더 : 적재시간에 기억장치의 사용여부에 따라 다양한 곳에 적재
- 동적로더 : 실행시간에 필요한 블록만 적재한 후 실행
* 제어 프로그램 : 감시 프로그램, 작업제어 프로그램, 데이터관리 프로그램
* 처리 프로그램 : 언어번역 프로그램, 서비스 프로그램
Q. 절대로더에서 각 기능과 수행 주체의 연결이 가장 옳지 않은 것은?
1. 연결-프로그래머
2. 기억장소할당-로더
3. 적재-로더
4. 재배치-어셈블러
-> 절대로더의 특징은 1. 재배치 및 링크 기능이 없다. 2. 프로그래머는 절대 주소를 기억해야 한다. 3. 다중 프로그래밍 방식에서는 사용할 수 없다. 절대로더의 로더는 적재 기능만 가진다! 따라서 기능과 수행 주체는 적재 - 로더 / 재배치 - 어셈블러 외에 기억장소할당, 연결 기능 모두 프로그래머가 담당한다.
- 응용 소프트웨어
- 사용자가 원하는 기능을 수행하기 위해 실행되는 프로그램
- 시스템 소프트웨어를 기반으로 특정한 응용 분야에서 특수 목적을 위해 사용할 수 있음
- 펌웨어 (firmware)
- 소프트웨어를 하드웨어화한 것으로 소프트웨어와 하드웨어의 중간 단계에 해당되어 미들웨어라고도 함
- 소프트웨어와 다른 점은 RAM에 적재되어 휘발성의 띄는 소프트웨어와 달리 ROM에 기록되어 영구적인 명령어와 데이터들로 이루어져 있음
- 대표적인 예로 BIOS를 들 수 있음
* 참고 사이트 : 펌웨어 정보
[Server] 펌웨어의 개념 (Feat. BIOS/UEFI)
ㆍ펌웨어 (Firmware) 하드웨어의 기본적인 구동 및 제어를 담당하는 특수 용도의 소프트웨어. 소프트웨어라고는 하지만 보통 하드웨어 엔지니어가 도맡아 지원한다. Q1. 소프트웨어면 소프트웨어
smallrich.tistory.com
Q. 미들웨어(Middleware)에 대한 설명으로 틀린 것은?
1. 여러 운영체제에서 응용 프로그램들 사이에 위치한 소프트웨어이다.
2. 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있어야 한다.
3. 소프트웨어 컴포넌트를 연결하기 위한 준비된 인프라 구조를 제공한다.
4. 여러 컴포넌트를 1대 1, 1대 다, 다대 다 등 여러 가지 형태로 연결이 가능하다.
->
사용자가 미들웨어의 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있다면, 보안의 위협이 될 수 있으므로 확인할 수 없도록 해야한다.
** 미들웨어란?
- 클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어이다.
- 이기종 하드웨어, 소프트웨어, 네트워크, 프로토콜, PC 환경, 운영체제 환경 등에서 시스템 간의 표준화된 연결을 도와주는 소프트웨어이다.
- 표준화된 인터페이스를 통하여 시스템 간의 데이터 교환에 있어 일관성을 제공한다.
- 운영체제와 애플리케이션 사이에서 중간 매개 역할을 하는 다목적 소프트웨어이다.
Q. 메시지 지향 미들웨어(Message-Oriented Middleware, MOM)에 대한 설명으로 틀린 것은?
1. 느리고 안정적인 응답보다는 즉각적인 응답이 필요한 온라인 업무에 적합하다.
2. 독립적인 애플리케이션을 하나의 통합된 시스템으로 묶기 위한 역할을 한다.
3. 송신측과 수신측의 연결 시 메시지 큐를 활용하는 방법이 있다.
4. 상이한 애플리케이션 간 통신을 비동기 방식으로 지원한다.
-> 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어이다. 즉각적인 응답을 원하는 경우가 아니라 다소 느리고 안정적인 응답을 필요로 하는 경우에 많이 사용된다.
2024.03.14 - [CS/운영체제론] - 미들웨어
미들웨어
미들웨어 정의 (Middle + Software) - 운영체제와 응용 프로그램 또는 서버와 클라이언트 사이에서 다양한 서비스를 제공하는 소프트웨어 미들웨어 종류 DB - 데이터베이스 벤더에서 제공하는 클라이
mangs2e.tistory.com
* 일반적인 컴퓨터의 부팅 과정
1. 컴퓨터에 전원을 인가하면 ROM에 저장된 부트로더가 실행
2. 부트로더가 하드디스크에 있는 운영체제 커널을 찾아 RAM에 적재
3. 부트로더는 제어권을 운영체제에게 전달
'CS > 전자계산기구조론' 카테고리의 다른 글
컴퓨터의 분류 (4) | 2024.01.13 |
---|---|
컴퓨터 구조의 발전 (0) | 2024.01.13 |
컴퓨터의 전력 소비 및 무어의 법칙 (2) | 2023.11.03 |
컴퓨터 시스템 성능 측정 (CPU 성능) (2) | 2023.10.29 |
추상화 및 컴퓨터 하드웨어 (0) | 2023.10.26 |