본문 바로가기
👨‍💻Computer Science/리눅스시스템프로그래밍

[UNIX] 유닉스

by 코푸는 개발자 2021. 9. 6.
728x90
유닉스(UNIX)란?

유닉스는 1972년경 Dennis Ritche가 B언어를 개량한 C언어로 만들었습니다.

*C언어는 유닉스 개발을 위에 만들어짐

 

유닉스의 특징
  • 뛰어난 이식성(Portability)
  • 단순하면서도 강력한 명령어
  • 계층적 파일 구조(Hierarchical file structure)
  • 유틸리티 프로그램(Utility Program)
  • 다중 프로세스(Multiprocess)
  • 주변장치를 하나의 파일로 처리함.
  • 보안 & 보호(Security & protection)

 

유닉스의 구조
  • 유닉스 시스템은 Kernel, Shell, Utility의 세부분으로 구성되어 있습니다.

 

Kernel

  • 커널을 Supervisor 프로그램과 몇 개의 중요한 Subroutine으로 구성되어 있으며, 항상 메모리에 상주하고 있다. 유닉스자체의 시스템 자원들을 관리하는 부분이며, 디스크, 테이프, 프린터, 단말기, 통신회로등의 장치를 관리합니다.

 

Kernel의 주요역할

  • 프로세스 계획과 관리
  • 파일 관리와 보안
  • 입/출력 서비스
  • 인터럽트와 에러처리
  • 기억장치 관리
  • 시스템계정(accounting)

 

Shell

  • User와 유닉스 시스템사이의 인터페이스역할(대화)을 가능케 해 주는 프로그램으로써 한마디로 명령어해석기(command interpreter)라고 할 수 있습니다. 사용자가 입력한 명령어를 해석하여 그 명령이 실행가능하도록 해주는 역할을 합니다. Shell은 메모리에 상주하는 것이 아니라 필요시에 Load되므로 일종의 응용프로그램으로 간주됩니다.

 

Process와 Program의 차이

  • Program : 디스크상에 보관되어 있는 프로그램이다.
  • Process : 디스크상에서 메로리로 load되어 실행중인 프로그램을 의미한다.

Shell의 종류

  • 표준 Bourne 쉘(Stephen Bourne가 개발) : '$' 표시
  • C 쉘(Bill Joy가 개발) : '%'로 표시
  • Korn 쉘(David Korn이 개발)

  
Utility
유닉스 시스템을 사용자들이 좀더 편리하게 사용하기 위해 개발된 프로그램 개발도구이며, 이 도구들로써 개발된 프로그램 역시 시스템 내부에서 하나의 유틸리티로 취급됩니다.


유닉스 Utility의 종류

출처:수퍼유저코리아

 

 

명령어의 형식 

유닉스 명령어는 맨앞에 명령어가 나오며, 그뒤로는 명령어의 인수들이 이어집니다.
한행에 하나이상의 명령어를 실행시키려면, 세미콜론(;)으로 분리시키면 됩니다. 
% who am I ; date

 

728x90

댓글