|
UNIX란 하나의 운영체제이며,
뒤에서 자세히 설명하겠지만 대략적인 특징은 다음과 같다.
하드웨어로 부터의
독립성
UNIX는 USER ID와 GROUP ID를 갖으며 각 파일과 디렉토리의 접근여부를 USER, GROUP, OTHER로 구분하여 권한을 제어한다. 즉, 같은 그룹 안의 USER들까지는 공개할 수 있는 자료는 서로 공유할 수 있으며, 각각의 데이터에 읽기·쓰기 권한을 부여할 수 있어 데이터의 성격에 따라 관리할 수 있다. 그리고 root를 제외한 다른 USER에게는 공개를 안할 수도 있으며, 개인의 데이터에 보안성을 부여할 수 있다. 하지만 이러한 보안은 root에게는 해당되지 않음을 항상 기억하기 바란다. 그리고 복수의 File System이 존재하는데 각각의 File System의 성격에 맞게 id를 부여할 수 있으며 또한 용량도 정할 수 있다. 그리고 같은 File System또는 다른 File System간에 Link를 적용할 수 있어 공간의 효율성이 제공된다. 이 장에서는 UNIX의 운영체제로서의 특징과 UNIX가 어떠한 하드웨어 환경 하에서 잘 돌아가며 그 하드웨어 환경이 어떠한 것이고 강력한 네트워킹을 지원하는 환경을 살펴보기로 한다. UNIX는 워크스테이션급에서 아주 잘 맞는 운영체제라 할 수 있는데 이유는 다수의 사용자들의 작업을 동시에 처리를 할 수 있는 능력을 가지고 있어야 하며, 각 프로세스마다 제어를 할 수 있어야 하기 때문이다. 즉, 각 프로세스마다 독립적으로 수행될 수 있도록 하드웨어 환경이 받쳐줘야 한다는 뜻이다. 그리고 하드웨어의 효율성을 높여서 시스템의 낭비를 최소화 할 수 있는 시스템이라야 한다. 이것은 도스 같은 경우 시스템 자원의 효율화가 잘 이루어지지 않았지만 UNIX는 다중사용자를 수용하며 처리할 수 있는 작업이 많기 때문에 당연히 시스템의 효율이 높아졌다 할 수 있다. 1.1.1 UNIX의 운영체제로서의 특징 기본적으로 UNIX는 OS의
한 부류이기 때문에 OS의 기능을 알아보면 다음과 같다.
1.1.2 UNIX를 잘 지원하는 하드웨어 환경 일반적으로 UNIX를 사용하는 이유는 강력한 다중작업과 복수사용자들의 작업지원을 위해 사용한다. 그러므로 하드웨어 설계도 이에 맞게 고려해야 한다. 현재로서는 SUN社의 워크스테이션을 표준으로 삼고 있는데, 이유는 SUN에서 내놓은 Solaris Version(예전의 SUN UNIX)이 자사의 하드웨어 설계의 표준을 따르기 때문이다. 그리고 그 회사의 운영체제를 가장 많이 사용하고 있기 때문에 사용할 수밖에 없는 상황이 되어버렸다. 멀티태스킹을 한다는 의미가 보통 알기로는 시분할 시스템에서 고루 시간분할을 하며, 동작속도면에서는 사이클클럭을 빠르게 한다고 알고 있지만 이것은 다소 틀린 견해이다. 왜냐하면 멀티태스킹을 지원하기 위하여 하드웨어 설계부터가 기본적으로 메인보드 한 장에 두 개 이상의 CPU가 존재하며 이들의 성능을 가진 동급의 메인보드를 복수장 수용할 수 있도록 UNIX는 설계되어 있다. 그래서 수준 급의 워크스테이션은 메인보드가 보통 10장 이상을 지원하게 설계되어 있으며 이를 운용할 수 있는 운영체제는 대개 Solaris를 채택하고 있다. Sparc CPU라든가 Ultra Sparc CPU 같은 것은 이러한 메인보드의 핵심 CPU이다. UNIX자체의 시스템 커널이 복수의 CPU를 지원할 수 있게 설계가 되어있으므로 Double Sparc CPU라는 말을 하기도 한다. 그래서 CPU 하나는 마스터 그 외에는 슬래이브가 되며 개개의 슬레이브에 속해있는 CPU는 또 슬래이브가 되며 상위 권한을 가진 CPU는 제어를 받는 CPU의 마스터가 된다. 그러므로 중요한 작업 또는 먼저 실행되어야 할 작업은 마스터에서 실행되며 그 외의 작업은 슬래이브에게 넘겨주는 방식으로 만들어져 있다. 그렇게 해서 동일한 시간대에 여러 개의 작업을 할 수 있는 것이다. 메인보드에 연결되어
있는 보조기억장치의 인터페이스는 주로 SCSI를 따르고 있다. 이것은 PC에서
많이 쓰이는 EIDE와 근본적으로 병렬처리문제에서 틀린 의미를 가지고 있다.
UNIX는 SCSI인터페이스를 가지고서 별도의 장치ID를 가진 보조기억장치를 ACCESS하여
고속으로 처리가 가능한 SCSI를 보다 효율적으로 관리할 수 있다.
주기억장치인 RAM의 경우는 웍스테이션 전용 RAM이라 불리는 SCRAM(Synchronous DRAM)을 사용함으로서 속도와 처리율을 높일 수 있다. 이 방식은 먼저 처리되는 명령이 끝나기 전에 다음 명령어를 처리할 수 있다. 그리고 64비트의 데이타를 병목 없이 한 사이클에서 처리할 수 있다. 그래서 CPU는 오리지널 64비트 처리구조를 가지고 있으며 개별적으로 구할 수 없는 RISC CPU이다. 그리고 메인보드 또한 BIOS에 넣어진 프로그램에 맞는 하드웨어를 설계하게 되어있는데 이도 또한 CPU를 가장 잘 지원해줘야 하므로 별개의 문제가 될 수 없다. SUN社의 제품을
가장 많이 사용하는 이유는 워크스테이션의 첫 번째에 꼽히는 사항인 안전성
때문이다. 대분분의 워크스테이션은 년간 1회정도만 시스템 하드웨어 확장이나
운영체제 업그레이드를 위하여 정지되는 때 외에는 정지를 하면 안되는 시스템을
원하게 된다.
또한 시스템의
데이터를 안전하게 백업하기 위해서 백업장치 또한 분명히 가지고 있어야 한다.
보통 일주일에 한번 하게 되는데 대개 두 개의 백업테잎를 가지고 있어야 한다.
PC에서 UNIX를 사용하기를 원하는 경우에는 자신의 CPU가 x86계열이라면 Solaris 제품군 중 x86플랫폼으로 출시된 Solaris를 구하여야 한다. 왜냐하면 CPU의 내부구조와 인터페이스구조 자체가 SUN기준과 틀리기 때문에 SUN OS를 가지고 와서 설치하려해도 되질 않는다. 그러므로 x86 EDITION인 것을 확인하고 PC에 설치하여야 한다. 그리고 PC에서는 되도록 주기억장치로서는 SDRAM을 사용하기를 권장하며 케시메모리는 최소 256KB 또는 512KB이상을 추천한다. VGA카드는 ET4000계열이 속도는 떨어지지만 UNIX또는 LINUX같은 체제등 기타 운영체제에서 기본적으로 지원되는 하드웨어로서 호환성은 뛰어나다. 그리고 사운드카드는 크리에이티브社(사운드블래스터)의 호환기종이면 설치가 가능하며 CDROM드라이브는 PC에서 SCSI를 추천하지만 EIDE형식도 지원된다.하지만 모두다 지원되는 것이 아니라 Solaris에서 지원되는 플랫폼을 따르는 것을 선택해야 하는데 이는 CDROM 드라이브 제조회사에 문의하거나 매뉴얼을 보면 알 수 있다. 제조회사에서 제품을 출시할 때 UNIX드라이버가 들어있다면 지원되는 것이다. 다만 버전과 지원기종을 잘 살펴야 한다. 모니터는 별상관이 없지만 Openwindows작업이나 기타 그래픽작업을 맘껏 누리기 위해서는 1600*1280이 지원되는 17인치 모니터 이상을 추천한다. FDD는 특성을 타지 않지만 만약을 위해서 가장 많이 사용하는 것을 고르도록 한다. 1.1.3 UNIX의 강력한 네트워킹 기능의 내장환경 이 부분에서는 UNIX시스템이 서브넷의 시스템 부분이 아니며 OS서버라고 가정하고 이 글을 전개해 나가도록 한다. UNIX 시스템을 워크스테이션이라고 가정한다. 그러면 네트워크 칩셋이 내장되어 있다. 그러므로 따로 네트워크 장비를 설치하지 않아도 된다. 다만 라우터와 CSU, DSU가 지역 망에 설치되어 있다고 가정한다. 이 환경 하에서 시스템에 따라서는 몇 천명에서 몇만 명의 동시접속인원을 확보할 수 있다. 이러한 숫자는 물론 네트워크 접속회선속도가 그만큼 지원되는 하에서 어느 정도 느리지 않고서 그 정도 인원이 무리 없이 네트워크를 사용할 수 있다는 의미인데 이것은 엄청난 의미를 갖는다고 할 수 있다. 도스나 윈95에서는 상상을 할 수 없는 일을 할 수 있는 것이다. 그만큼 UNIX는 네트워크 기능이 막강하기 때문에 실행될 수 있다. 하지만 정작 중요한 것은 속도나 접속인원이 아닌 안정성에서 유래된다. 아무리 속도나 동시접속인원을 많이 확보할 수 있다해도 처리할 데이터를 제대로 전송 못한다면 그것은 좋은 시스템이 될 수 없다. 그리고 UNIX시스템을 가지고서 네트워킹 기능을 이용한다면 mail server, WWW server, ftp server, pop server, news server등 여러 가지로 이용할 수 있는 것이 많다. 그런데 시스템의 성능을 잘 파악하고 네트워크 접속속도를 잘 따져봐서 효율적으로 운영할 수 있을 만큼만 서비스하는 것이 바람직하다. 시스템의 성능이 좋지 않다면 다른 서버를 구축하여 분산시키는 것이 바람직하다. ¶ 운영체제에서 자주 나오는 용어 Swapping
Temp
Memory
Manager
Bitmap
List
Buddy
System
1.2.1 일괄처리
1.2.2 다중프로그래밍
1.2.3 다중
태스킹
1.2.4 시분할
시스템
1.2.5 실시간
처리
1.2.6 분산처리
1.2.7 다중프로세서
처리
1.2.8 병렬처리
1.3.1 BSD
1.3.2 System V
1.3.3 XENIX, SCO UNIX 1.3.4 Ulltrix, Solaris(Sun OS), HP-UX, AIX 1.3.5 Mach, chorus 1) 다중 사용자, 다중
태스킹의 대화형 시스템
|