4. 소프트웨어의 역할

2020. 5. 10. 00:08·Computer Science/Computer architecture

 

 

 

1. 역할 구분

 

1) 응용 프로그램 (Application Program, 애플리케이션)

- 사용자 서비스를 위한 것이다.

- 문서 편집이나 자료관리 등 사용자의 목적에 맞게 특정한 작업을 수행하는 프로그램이다.

사용자

문서 파일 (ex. hello.doc, test.hwp)

응용 프로그램

워드 프로세서 프로그램

운영체제

윈도우 운영체제

하드웨어

PC

 

 

 

 

2) 시스템 소프트웨어 (System Software)

- 하드웨어를 효율적으로 다루기 위한 것이다.

- 하드웨어 구동과 관련되어 컴퓨터 시스템을 효율적으로 다루기 위한 프로그램들의 집합이다.

 

 

① 종류

˙ 로더 (Loader) : 프로그램을 메모리에 넣어 실행을 준비한다.

˙ 진단 (Diagnostic) : 하드웨어나 응용프로그램의 상태를 진단한다.

˙ 유틸리티 (Utility) : 디버거(Debuffer), I/O 프로그램 등

˙ 언어처리기 (Language Processor) : 번역 프로그램

˙ 라이브러리 (Library) : 표준 서브루틴 (Subroutine)

˙ 운영체제 (Operating System, OS) : 하드웨어나 소프트웨어를 관리 운영한다. 대표적인 시스템 소프트웨어다.

 

 

② 시스템 소프트웨어의 역할

 

 

 

3) 운영체제 (Operating System, OS)

- 컴퓨터를 운영하는 프로그램을 가상으로 표현한 말이다.

- 컴퓨터 사용자, 하드웨어, 소프트웨어 사이의 중재자로서 인터페이스를 제공한다.

- 시스템 자원의 효율이 전반적으로 최대가 되도록 하드웨어나 소프트웨어를 총괄한다.

- CPU에 일을 시키고 디스크에 자료를 저장하고 화면에 글자를 나타내는 등 기본적이며 필수적인 서비스와 명령을 받아들여 처리한다.

 

 

① 장치 드라이버

- 컴퓨터 시스템의 하드웨어나 주변장치를 구동시킬 때 운영체제가 요구하는 정보가 들어있는 소프트웨어 파일이다.

- 즉, 하드웨어를 구동시킬 때 필요한 파일이다.

 

 

② 커널과 시스템 호출

 

· 커널 (Kernel)

- 운영체제의 핵심부로 항상 주기억장치에 상주한다.

- 하드웨어와 소프트웨어 요소들 사이의 통신과 시스템 자원을 관리한다.

- 운영체제의 다른 부분에서 공통적으로 필요한 서비스를 제공한다.

- 운영체제가 기본적으로 해야 할 대부분의 작업들을 수행한다.

 

 

· 시스템 호출 (System Call)

- 커널에 운영체제의 서비스를 요청하는 절차다.

 

 

 

③ 쉘과 유틸리티

 

· 쉘 (Shell, 명령어 해석기, Command Interpreter)

- 사용자가 운영체제의 내부 커널을 인터페이스 한다.

- 까다로운 프로그램이나 운영체제의 사용 불편을 개선하기 위해 메뉴 구동형의 사용자 인터페이스를 제공하는 일종의 유틸리티 프로그램이다.

- 커널 사이트를 이용할 수 있도록 명령어 라인이나 그래픽 인터페이스를 통해 사용자의 명령을 처리한다.

- ex) 사용자가 HTML 코드를 몰라도 웹 페이지를 통해 메일을 보낼 수가 있다.

 

 

· 유틸리티 (Utility, 도구, 서비스 프로그램)

- 컴퓨터의 하드웨어, 운영체제, 응용 프로그램을 관리하고 조화시킬 목적으로 설계된 소프트웨어다.

'Computer Science > Computer architecture' 카테고리의 다른 글

6. 컴퓨터 언어  (0) 2020.05.24
5. 윈도우 운영체제  (0) 2020.05.24
3. 메인보드  (0) 2020.05.09
2. 하드웨어 구성요소  (0) 2020.05.09
1. 컴퓨터 구성요소  (0) 2020.05.09
'Computer Science/Computer architecture' 카테고리의 다른 글
  • 6. 컴퓨터 언어
  • 5. 윈도우 운영체제
  • 3. 메인보드
  • 2. 하드웨어 구성요소
나는 유찌
나는 유찌
쩌리쨩
  • 나는 유찌
    유찌 개발 일기
    나는 유찌
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 사이드 프로젝트
        • 게시판
        • 블로그(Spring boot + React.js ..
      • 데이터베이스
        • SQLD
      • 이슈 해결
      • Front
        • Javascript
        • Vue.js
        • HTML+CSS
      • Backend
        • Spring
        • ORM
        • JAVA
      • 공부
        • HTTP
        • OOP
        • 이것저것
        • 코딩테스트 | 알고리즘
      • Computer Science
        • Computer architecture
        • 데이터베이스
        • 운영체제
      • 일상
        • 독서
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    pessimisticlock
    Access Token Refresh Token
    AntPathMatcher
    refresh token
    JWT이란?
    Spring Boot
    Kotlin AntPathMatcher
    Spring Security AccessDecisionManager
    role scope
    AccessDecisionVoter
    spring 격리수준
    phantom read
    Access token 재발급
    spring
    LeetCode
    jwt
    추리소설
    독서
    DIRTY READ
    히가시노 게이고
    웹 개발
    redis 분산락
    jwt 로그인 구현
    mssql
    한국소설
    access token
    mysql 격리수준
    Spring boot에서 JWT 구현
    권한 scope 처리
    Kotlin AccessDecisionManager
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
나는 유찌
4. 소프트웨어의 역할
상단으로

티스토리툴바