반응형

 

리눅스 운영체제는 크게 커널, 쉘, 사용자 프로그램으로 분류할 수 있다.

 

- 커널(Kernel)

- 쉘(Shell)

- 사용자 프로그램

 

 

1. 커널(Kernel)

  • 운영체제의 핵심
  • 도스에서 IO.SYS와 MSDOS.SYS
  • 모든 부분에서 여러 가지 기본적인 서비스를 제공
  • 시스템의 하드웨어와 다양한 프로세스나 메모리 등을 관리
  • 시스템을 제어

 

2. 쉘(Shell)

  • Operating System Command Interpreter
  • 커널과 사용자 프로그램의 중간에 위치하는 명령어 해석기
  • 쉴은 커널과 직접적으로 연결
  • 사용자가 로그인을 하면 자동으로 형성되어 명령어를 해석할 수 있는 상태로 만듬
  • 사용자 프로그램에서 실행시킨 명령어를 해석하여 그 결과를 커널로 보내주는 역할을 함
  • 쉘의 종류는 다양하나, 리눅스에서는 주로 bash(Bourne-Again Shell)을 사용

 

3. 사용자프로그램

  • 일반적으로 리눅스에서 사용하는 프로그램
  • 네트워크 서비스
    • 아파치 웹서버
    • FTP
    • SSH
    • 메일서버
  • 데몬이나 각종 소프트웨어 등

 

 

● 쉘(Shell)의 종류

1. Bourne Shell(sh)

  • 1979년, Bell 연구소의 Steven Bourne이 개발한 최초의 대중화된 유닉스 쉘
  • 가장 오랫동안 UNIX 시스템의 표준 구성요소
  • 후에 개발된 쉘에 비하여 기능적인 명에서 부족
  • 현재 리눅스에서 가장 많이 사용하고 있는 Bourn Shell의 변종인 Bash가 있음

 

2. Korn Shell(ksh)

  • Bourne Shell을 포함하는 더욱 강력한 쉘
  • 강력한 명령어 편집기로 인해서 일반적으로 유닉스에서 많이 쓰임
  • AT&T 사의 David Korn이 제작
  • Bourne Shell의 기능들을 확장한 쉘
  • Bourne Shell과의 호환성이 높음
  • C Shell의 기능들도 제공

 

3. C Shell(csh)

  • 버클리 대학교에서 개발됨
  • Bourne Shell과 호환이 되지만 인터페이스 구조가 다름
  • C언어 문법과 제어구조에 비슷한 면을 가짐
  • C Shell은 명령어 모드에서 다양한 기능을 제공
  • 유닉스 실행 시의 기본 Shell로 주로 스이기도 함

 

4. TC Shell(tcsh)

  • 1908년대 초반, Ken Greer 등이 C Shell을 확장시켜 제작
  • 프리 소프트웨어로 많은 사람들이 사용
  • C Shell의 모든 기능을 제공
  • 명령어 편집을 emacs 스타일 방식을 취함

 

5. Bourne Again Shell(bash)

  • 현재 리눅스 시스템의 기본 Shell
  • 가장 많이 이용
  • Bourne Shell의 기능을 추가, 발전
  • C Shell과 Korn Shell에서 제공하는 기능들도 상당수 포함
  • 다른 쉘에 비해 쉽게 접근이 가능

 

 

 

 

반응형

'SW개발' 카테고리의 다른 글

[Linux]심볼릭 링크&하드 링크  (2) 2012.11.20
[스마트 포인터]  (0) 2012.10.10
[3GPP2]  (0) 2012.09.03
[QXDM] [로그 저장하고 불러오기]  (2) 2012.08.24
[리눅스 쉘(Shell) 스크립트]  (5) 2012.08.17
[VI 글자 색상 바꾸기]  (2) 2012.08.13
[Android]서비스의 라이프 사이클  (0) 2012.08.10
[Android][OOM(Out Of Memory) Adjustment]  (0) 2012.08.02
[Linux][VIM설정]  (0) 2012.07.31
[Linux][Screen]  (1) 2012.07.31

+ Recent posts