UNIX는 Windows95/98 또는 Mac등과 같은 여러 운영체제중의 한 종류로서
주로 고성능 Workstation이나 중형 컴퓨터 등의 운영체제에 쓰여 왔습니다.
실제로 UNIX는 노벨사(Novell Corporation)의 등록상표이지만 관련된 운영체제와 어플리케이션, 프로그램과 유틸리티,
컴파일러 프로그래램등을 통틀어 일컫는 말입니다.
유닉스는 흔히 풍요롭고 확장성 있고 개방된 컴퓨팅 환경이라 하며 멀티태스킹, 멀티유저 운영체제라는 특징을 가지고 있습니다.
2.
Mutiluser(다중사용가능)
Multiuser는 하나의 컴퓨터 자원을 여러사람이 동시에 접속하여 사용할 수 있음을 뜻합니다.
초기의 컴퓨터는 대단히 고가여서 컴퓨터의 가용성을 최대한 늘리기 위하여 BATCH작업을 주로 하였습니다.
BATCH작업이란 여러개의 작업을 모아서 한꺼번에 처리하여 그 프린터 결과를 한꺼번에 받아서 각 작업별로 분류하여 받아보는 방법으로
주로 정해진 시간에 작업을 처리한 것입니다.
이러한 불편함을 없애기 위해 여러사람이 여러개의 터미널을 가지고 동시에 접속하여 마치 한 사람이 console 장치를 통해
컴퓨터를 혼자 쓰는 것처럼 즉각적이고도 직접적인 결과를 화면을 통해 볼 수 있도록 등장한 개념이 바로 Multiuser 환경입니다.
Multiuser를 지원하기 위해서 사용되는 개념이 바로 Time Sharing(시분할)기법입니다.
이는 여러사람이 작업하는 시간을 잘게 쪼개어 한 사람이 사용하지 않는 짧은 시간동안 다른 사람이 컴퓨터 자원을 사용하도록 하는 개념입니다.
3.
Multitasking(동시작업)
Mumtitasking은 동시에 여러개의 TASK를 처리한다는 개념으로 한대의 컴퓨터가 동시에 여러개의 작업을 Load하여
Time Sharing 방식으로 여러 작업을 처리하는 기법입니다.
고성능의 컴퓨터의 경우 여러개의 CPU와 풍부한 RAM Memory를 사용 함으로써 CPU가 입출력에 개입하지 않는 기술 등을 통해
작업 효율을 높일 수 있습니다.
슈퍼웹호스팅 서버는 막강한 Compaq Proliant 400, CPU 500 와 512M의 고용량 RAM Memory 로 여러 사용자가 각종 동시작업이 가능합니다.
4.
Open Environment(개방환경)
UNIX의 개방성은 UNIX 철학의 중요한 부분으로서 다른 유연성과 함께 프로그래머 중심적인 특징들과 밀접한 연관이 있습니다.
즉 사용자가 얼마든지 마음대로 개선하고 자신의 환경에 맞도록 변화시킬 수 있는 것입니다.
프로그램의 소스가 공개되어 있는 경우가 많으며( 유닉스의 클론인 리눅스의 경우 거의 공개되어 있습니다.)
다양한 네트워크 환경을 수용하고 있으며 운영체제로의 Porting이 가능합니다.
5.
LINUX(리눅스)의 특징
Linus Torvalds라는 핀란드 사람이 있었습니다.
그는 원래 헬싱키에서 전산학을 전공하던 사람이었는데 88년에 386보호모드에서 A라는 프로그램과 B라는 프로그램을 스위칭하는
작업 전환기를 만들어 보게 되었습니다.
여기서 재미가 붙자 물고 늘어지는 해커 기질이 발휘되어 Paging, Timer Interrupt등을 두달만에 만들게 되었다고 합니다.
그것이 계기가 되어 그 외 여러가지 디바이스 드라이버와 기초적인 파일시스템 등을 가진 리눅스 버전 0.01을 91년 8월에 내놓게 되었습니다.
여기에 리차드 스톨만이라는 사람이 만든 FSF라는 단체의 GNU프로젝트가 합세 하면서 이 단체와 뜻을 같이하는
전세계의 프로그래머들의 도움을 받아 라이너스는 커널만을 담당하고 나머지 프로그램들은 이들에 의해 개발되고 있습니다.
* 여기서 잠시 GNU프로젝트에 대해서 좀더 자세히 알아보겠습니다.
GNU는 Gnu is Not Unix라는 뜻입니다.
이 프로젝트의 목적은 유닉스와 비슷하면서도 더 강력한 운영체제를 만들고자 하는 것입니다.
자유로운 컴퓨팅을 꿈꾸는 그들다운 생각으로, 누구의 지배도 받지 않는 새로운 운영체제를 개발하려고 하는 것 입니다.
그들은 이것을 위해서 GCC라고 불리는 C/C++컴파일러와 강력한 에디터인 Emacs를 만들고
여러 가지 유닉스 유틸리티들의 GNU버전을 만들었습니다. 그리고 이런 것들이 Linux에서 시도된 것입니다.
Linus에 의해 80386용 커널이 개발되고 뒤이어 GCC가 이 커널에 포팅되었습니다.
이미 만들어져 있던 많은 GNU프로그램들은 GCC로 컴파일되었으며,
GNU프로그램 외에도 소스가 공개되어 있던 많은 프로그램들이 GCC로 컴파일되었습니다.
이렇게 해서 Linux는 세상에 그 모습을 드러내게 되었습니다.
리눅스는 GNU정신에 따라 완전 공개로 배포되며 모든 프로그램의 소스 또한 공개되어 있습니다.
따라서 원하는 사람은 누구나 그 소스를 개조하여 성능을 향상시킬 수 있으며 물론 GNU정신에 따라서 개조한 내용도 다른
사람에게 공개해야 합니다. 이런 이유로 해서 리눅스는 전세계의 수많은 사람들에 의해 테스트되고 개선, 개발되어 왔으며 Windows NT 서버는 몰론이고 어느
상용 유닉스와도 견줄 수 있는 아니 더욱 우수한 성능과 안정성을 가지게 되었습니다.
6.
이러한 리눅스는 다음과 같은 장점이 있습니다.
- 완벽한 멀티 유저, 멀티 태스킹 시스템
- 뛰어난 안정성
- 완전 공개 시스템
- 강력한 네트워크 지원(TCP/IP(INTERNET), SLIP/PPP, IPX, AppleTalk,ISDN, Ethernet, FDDI, Radio Network등)
- 빠른 업그레이드
- 풍부한 소프트웨어
- 네트웍 기반의 X-Window제공
- 사용자를 위한 여러 가지 공개 문서들(LDP, FAQ, HOWTO 등등)