1 day
UNIX
UNIX는 어셈블리어로 작성되어 새로운 CPU가 나올 때마다 거의 새로 작성되어야만 했다.
Dennis Ritchie는 Brian Kernighan의 도움으로 B언어를 개량해서 C언얼 개발에 성공
C언어가 개발되며 하드웨어가 달라져도 rebuild 혹은 약간의 수정만으로도 포팅이 가능해졌고,
어셈블리어의 몰락을 가져왔다.
이 UNIX는 AT&T 에서 버클리 대학으로 전달되며 인기가 높아짐.
SysV(System five) Unix 계열과 BSD(Berkeley Software Distributuin) UNIX 계열로 경쟁구도가 생김.
두 계열의 경쟁구도로 인해 호환성 문제가 커지게 되어
POSIX(Portable Operating System Interface)라는 UNIX 시스템의 최소한의 호환성을 요구하는 최소 기준이 생겨남.
POSIX로도 부족하여 MicroSoft사에서 SUS(Single UNIX Specification)이라는 유닉스 단일 표준안을 제시.
통합 후에 Open Standard를 통해 표준화가 됨.
즉, API와 OS 구조가 공개되어 표준이 만들어진 시스템은 UNIX가 시초
오픈시스템 = 유닉스(+리눅스)
□ 리눅스의 역사
리누스 토발즈가 교육용으로 사용한 MINIX(Mini UNIX)가 불편했기에 LINUX 운영체제를 개발.
GNU의 컴파일러 GCC에 의해 더욱 발전했다. LINUX에서 커널 부분을 제외한 나머지는 GNU의 공로가 더 크다.
LINUX는 소스 코드를 오픈하고 UNIX 표준(POSIX, SUS)를 받아들이면서 빠르게 성장하여 상업용 수준까지 발전.
리눅스의 배포판
- CentOS
- Ubuntu
- Fedora
인터넷의 정보는 모두 맞는 것은 아니므로 표준 문서와 공식 문서를 먼저 보는 것이 중요
표준을 준수한다는 것은 호환성을 보장한다는 뜻
□ 가상머신
: 현재 사용하는 OS 위에 다른 OS를 애플리케이션처럼 운용
가상 머신 종류
- 전가상화(Full-virtualization) : 낮은 성능과 높은 독립성
- 반가상화(Para-virtualization) : 높은 성능과 낮은 독립성
□ 운영체제
운영체제 구성
- 커널 : 하드웨어 제어
- 애플리케이션
- 쉘 : 다른 애플리케이션을 구동
- CLI (Command Line Interface) / CUI(Character User Interface)
- GUI(Graphic Users Interface)
UNIX, LINUX는 CLI/CUI방식을 선호
: 낮은 대역폭에서도 잘 작동하고 저전력
-> GUI는 해상도 때문에 데이터 전송량이 크기 때문
Console rerminal vs Remote terminal
- console terminal : 시스템에 물리적으로 부착돼있는 콘솔에서 액세스한 터미널
- remote termial: 원격에서 액세스한 터미널
반응형