티스토리 뷰
유닉스(Unix)
- 1970년대 초 미국 AT&T 벨 연구소에서 켄 톰슨(Ken Thompson), 데니스리치(Dennis Ritchie)등에 의해 개발
- 다중 사용자 운영체제로 개발
- 처음엔 중형 컴퓨터에 사용되도록 고안되었음
- 점차 발전하면서 사용범위가 넓어졌다. (슈퍼컴퓨터, 메인프레임, 워크스테이션, PC, 스마트폰 등)
- 1990년대 초 리누스 토르발즈(Linus Torbalds)에 의해 PC를 위한 운영체제 '리눅스'의 개발
- 다양한 환경에서 사용되고 있을 뿐만 아니라, 소프트웨어 경쟁력의 핵심이 되고 있음.
유닉스 계열 운영체제
1. 안드로이드(Android) OS
2. IOS
3. 맥(Mac) OS X
4. 리눅스(Linux)
5. BSD 유닉스(Unix)
6. 시스템 V
7. Sun 솔라리스(Solaris)
8. IBM AIX
9. HP HP-UX
10. Cray 유니코스(Unicos)
유닉스의 설계철학 -> 단순성, 이식성, 개방성
1. 단순성 (Simplicity)
- 최소한의 필요한 기능만 제공하여 운영체제의 역할을 하도록 함
- 자원에 대한 일관성 있는 관점을 제공
--> 모든 주변 장치들도 파일과 같은 방식으로 사용할 수 있도록 함
2. 이식성 (Portablity)
- 고급언어인 C언어로 작성되어 다양한 플랫폼에 쉽게 이식할 수 있도록 함
- 여러 기종의 하드웨어에 동일한 운영체제를 운용할 수 있음.
- 정보를 주고 받기가 훨씬 쉬워짐
- 새로 등장하는 싸고 좋은 하드웨어를 얼마든지 쉽게 교체하여 사용 가능
3. 개방성 (Openess)
- 소스코드 공개
유닉스의 특징
1. 다중 사용자 다중 프로세스 운영체제
- 여러 사용자가 동시에 사용가능
(여러 사용자를 관리하기 위한 관리자 슈퍼유저 super-user 존재)
- 여러 프로그램들이 동시에 실행될 수 있는 다중 프로세스 기능 갖춤.
2. 쉘을 이용한 대화식 운영체제
- 명령어 해석기인 쉘(shell)을 통해 사용자와 시스템과의 대화식 운영
- 유닉스가 쉘 프롬프트를 화면에 표시하고 사용자가 명령어를 입력하면 쉘이 이를 해석하고 처리하여 결과를 알려주는 방식으로 작동
- 쉘 스크립트(Shell Script) / 쉘 프로그래밍
: 유닉스 명령어나 유틸리티 등을 사용하여 프로그램을 작성
- 쉘 스크립트를 이용하면 큰 작업을 수행하기 위해 매번 새로운 프로그램을 개발하는 것이 아니라 기존의 작은 프로그램을 적절히 재결함하여 수행할 수 있다.
3. 훌륭한 네트워킹
- 다양한 네트워크 응용 프로그램을 제공
- 유닉스에서부터 네트워킹이 시작
- ftp(파일 주고받기), telnet(원격), www(서버), X-window 등의 네트워크 응용들은 대부분 유닉스를 기반으로 개발됨
4. 계층적 파일 시스템
- 트리 구조
- 가장 상위 디렉터리: 루트(root) 디렉터리
'Linux' 카테고리의 다른 글
[Linux] X윈도우 - 특징, 사용 (0) | 2020.10.14 |
---|---|
[Linux] 사용자 계정 관리 - 슈퍼유저, 사용자 계정 추가/삭제, 그룹 추가/삭제 (0) | 2020.10.14 |
[Linux] 사용 환경 - 직접로그인, 원격로그인, 로그아웃 (0) | 2020.10.14 |
[Linux] 유닉스(Unix)의 역사, 버전 (0) | 2020.10.14 |
[Linux] 유닉스(Unix) 시스템 구조 (0) | 2020.10.14 |