CS/전자계산기구조론
추상화 및 컴퓨터 하드웨어
망재이
2023. 10. 26. 20:42
- 추상화 (Abstraction)
- 자동차를 예를 들었을 때 자동차 내부에는 수많은 기계들이 존재하지만 운전자는 모든 기계들을 하나하나 알지 못한다. 하지만 브레이크를 어떻게 사용하는지, 각각의 버튼이 어떤 기능을 하는지만 알면 자동차를 다룰 수 있다. 핸들, 버튼 등은 인터페이스라고 보면 된다.
- 정리하자면 운전자와 자동차, 인접한 두 계층 사이에 중요하지 않은 디테일한 부분들은 감추고 필요한 인터페이스만 제공해주는 것을 추상화라고 한다.
- Hiding details when they aren’t important
- Providing only required interface information between two adjacent layers
- 소프트웨어 (Software)
- 컴퓨터를 비롯한 시스템에서 특정 작업을 수행하게 하는 프로그램의 집합으로 그 수행에 필요한 절차, 규칙, 문서 등의 총칭
- 응용 소프트웨어 (Application Software) : 운영 체제에서 실행되는 모든 소프트웨어
- 시스템 소프트웨어 (System Software) : 컴퓨터가 잘 작동하도록 도와주는 기본 소프트웨어
- 컴파일러 (Compiler) : 고급 언어를 기계어로 바꿔줌
- 운영체제 (Operating System) : 입출력 담당 / 메모리와 저장 관리 / 스케줄링 & 자원 공유 등 다양한 역할을 담당
- 유틸리티 프로그램 (Utility Program) : 운영체제를 돕고 컴퓨터 시스템이 원활하게 작동하도록 도움을 줌 - 응용 소프트웨어와 시스템 소프트웨어의 차이 : 둘 다 소프트웨어! 하지만 응용 소프트웨어는 사용자와 시스템 소프트웨어 간의 인터페이스 역할을 하며, 시스템 소프트웨어는 응용 소프트웨어와 하드웨어 간의 인터페이스 역할을 함.
- 프로그램 언어 레벨
- 고급 언어 : 사람이 이해하고 작성하기 쉽게 만들어진 언어
- 저급 언어
- 어셈블리어 : 0과 1로 이루어진 기계어를 읽기 편하게 만든 저급 언어
- 기계어 : 0과 1로 이루어진 컴퓨터가 이해할 수 있는 언어 - 컴파일러 : 고급 언어 -> 어셈블리어
- 어셈블러 : 어셈블리어 -> 기계어
- 컴퓨터 구조
- 중앙처리장치 (CPU), 주기억장치 (메모리), 보조기억장치, 입출력장치
- 칩셋 (chipset)
- 노스 브리지 : 아래 그림의 파란 동그라미로 사우스 브리지로 명령을 전달하는 기능을 가지며 메모리 컨트롤러가 포함되어 있음. CPU, 메모리, 그래픽 카드 같은 고속 버스를 제어하는 것
- 사우스 브리지 : 아래 그림의 하얀 동그라미로 I/O 컨트롤러가 포함되어 있으며 하드 디스크, USB, PCI 등의 보조기억장치, 입출력 장치 같은 저속 버스를 제어하는 것
- AMD 애슬론64를 발매하면서 메모리 컨트롤러를 CPU에 내장했고 2008년 인텔 코어 i 시리즈가 나오면서 노스브리지의 일들이 다 CPU에 내장되면서 오늘날의 메인보드는 노스브리지가 보이지 않음
728x90