컴퓨터 시스템의 개요1

김민세·2022년 11월 21일
0

리눅스 구조

목록 보기
1/6
post-thumbnail

컴퓨터 시스템의 개요

요즈음 세상에는 다양한 컴퓨터 시스템이 있다. 우리 주위에는 컴퓨터, 스마트폰, 태블릿 등이 있고 회사에서는 서버용이 있다.

컴퓨터 시스템의 하드웨어 구성


컴퓨터 시스템 동작할 때 하드웨어 순서

  1. 입력 장치 혹은 네트워크 어댑터를 통해서 컴퓨터에 무언가 처리 요청이 들어온다.
  2. 메모리에 있는 명령을 읽어 CPU에서 실행하고 그 결괏값을 다시 메모리의 다른 영역에 기록한다.
  3. 메모리의 데이터를 하드디스크(이하 HDD로 표기)나 SSD 등의 저장 장치에 기록 또는 네트워크를 통해 다른 컴퓨터에 전송하거나 디스플레이 등의 출력 장치를 통해 사람에게 결괏값을 보여준다.
  4. 1번부터 반복해서 실행한다.

프로그램 종류

  • 애플리케이션: 사용자가 직접 사용한다.
  • 미들웨어: 여러 가지 애플리케이션이 공통으로 사용하는 처리를 묶어서 애플리케이션의 실행을 도와준다.
  • OS: 하드웨어를 직접 조작하여 애플리케이션이나 미들웨어의 실행에 필요한 기능을 제공한다.

위의 프로그램은 연동되어 작동한다.

프로그램이 서로 연동되어 동작


OS

일반적으로 os는 여러 가지 프로그램을 프로세스라고 하는 단위로 실행한다.

프로세스는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램을 말한다.

밑에 그림과 같이 각 프로그램은 1개 혹은 여러 개의 프로세스로 구성된다.

리눅스를 포함하여 대부분의 os는 여러 개의 프로세스를 동시에 실행할 수 있다.


리눅스, 리눅스와 하드웨어의 관계

리눅스의 중요한 역할은 외부 장치를 조작하는 일이다.

리눅스 같은 os가 없으면 여러 개의 프로세스가 각각 디바이스를 조작하는 코드를 작성해야 한다.

OS가 없을 떄의 디바이스 조작 방법

다음과 같이 해도 작동은 하지만 단점이 있다.
단점

  • 모든 애플리케이션 개발자가 디바이스의 스펙을 상세히 알아야만 디바이스를 조작 할 수 있다.
  • 개별 개발으므로 개발 비용이 커진다.
  • 멀티 프로세서가 동시에 디바이스를 조작할 경우 예상외의 동작이 발생할 수 있다.

이러한 단점 때문에 리눅스는 디바이스 드라이버라고 하는 프로그램을 통해 디바이스를 다룬다.


profile
김민세

0개의 댓글