1장. OS란?

OS/OS 파헤치기! 2010. 8. 12. 01:39
컴퓨터는 대충 4가지로 나누어 생각해 볼 수 있다. 

먼저 기계덩아리 1)하드웨어, 
하드웨어를 사용가능 하게 해주는 2)운영체제,
운영체제 안에서 돌아가는 3)어플리케이션 프로그램,
이러한 어플리 케이션을 이용하는 4)사용자(유저)

이미 여러분들은 OS에 관해 여러가지 문장으로 정의해 놓은 것을 알고 있을 것이다. 필자는 개인적으로 '하드웨어를 사용가능 하게 해주는 운영체제' 에 다가 조금 더 보태서 '하드웨어를 효율적으로 사용 가능하게 해주는 운영체제' 라고 정의하고 싶다. 

여기에서 '효율적으로' 란 말은 두가지로 살펴볼 수 있다. 하드웨어적인 효율성과  하드웨어와 사람간의 효율성.
간단히 살펴보고 넘어가자.
첫번째, 하드웨어적인 효율성이란 앞으로 계속 살펴보며 전개될 내용의 거의 전부가 하드웨어적인 효율을 높이는 방법들이다.
두번째 하드웨어와 사람간의 효율성이란 다른말로 유저 인터페이스룰 말한다. 재미난건 UI가 너무 잘 되있다고 해서 무조건 좋은것만은 아니라는 점! 그만큼 자원의 소모가 심해지고, 너무 간단하게 UI를 만들면 쓰기가 어려워진다는 양날의 검과같은 점이 있다. 

태초에 컴퓨터가 생기면서 OS의 필요성이 제기 되었는데, 이런저런 역사는 접어두고 OS다운 OS는 심플, 또는 멀티 프로그래밍이 가능한 배치(batch)시스템이 었다. 
배치 시스템의 가장 큰 특징은 순차적으로 A ->B ->C ->D  이런식으로 진행이 되어 지는 시스템인데, 여기에서 유저와의 상호작용이 개입될 여지가 전혀 없다는 점이 포인트이다. 
여기에서 심플배치시스템말고 멀티프로그래밍 배치 시스템은 그 유명한 스풀링(Simulaneous Peripheral Operation On-Line)의 개념을 빌린것인데, 스풀링이란 주변장치들의 속도가  CPU에 비해서 현저히 느리기 때문에 일종의 동기화를 위한 완중장치(buffer)이다.  먼저 처리된 아웃풋들이나 병목현상으로 대기하고있는 인풋을 거대한 디스크와 같은 공간에 깡그리 담아 버림으로써 데이터의 증발을 막는 역할을 한다.  일종의 buffer이기는 하지만 주변기기들과의 I/O 전용으로 사용된다는 접이 다른 buffer와의 차이점이다. 

이러한 배치시스템의 처리단위는 통상 잡(job)이었다. 잡이란 프로그램, 데이터, 몇가지 제어정보 를 지닌 일련의 카드라고 일단 생각하기!! 
이러한 잡들의 수행을 빠르게 하기위해 비슷한 잡들끼리 묶어서 그룹으로 컴퓨터에서 수행시켜주되 잡풀이라는 스풀에 담아서 한정된 메모리안에 올렸다가 내렸다가 하면서 수행하는 형태의 시스템이 바로 멀티 프로그래밍 배치 시스템이다.

여기서 우리는 몇 가지 OS 이론의 중요한 주제가 등장하게 된다. 
어떤 잡을? 언제? 올리고 내리고 할지를 결정하는 잡 스케줄링(롱텀스케줄링) 은 나중에 시피유 스케줄링(숏텀스케줄링)
으로 연구가 진행되고 수행을 위해 한정된 주메모리에 올렸다가 내렸다가 해야하기 때문에 그 유명한 메모리 스케줄링 등장하게 된다. 
또한 스풀은 통상 하드디스크로 발전하며, 그 속도와 효율성을 발전시키기위해 디스크 스케줄링 이라는 주제로 승화(?)되어 버리는 사태에 이른다. 
잡은 나중에 프로세스  라는 근사한 단위로 다시 나뉘게 되고 프로세스는 또 쓰레드  라는 현대적 단위로 다시 바라보게 된다. 
방금전 설명한내용은 이후 글이 진행됨과 동시에 하나씩 베일을 벗겨보기로 하자. 

마지막으로 앞으로의 앞으로의 OS의 경향을 살펴보도록하자
현재 컴퓨터는 인텔 코어2듀어니 듀얼코어니 뭐 이런 말을 들어 봤을것이다. 즉, 멀티프로세서! 씨피유가 1개가 아니란 말이다. 이러한 멀티 프로세서시스템은 크게 두가지로 분류된다. 
첫째, 패러랠 시스템
둘째, 분산형 시스템

첫번째, 패러렐 시스템은 tightly coupled system 이라고도 한다. 요거는 씨피유는 여러개이지만 램, 클럭 같은 시스템 자원은 여러개의 씨피유가 공유하게 된다. 포인트는 10개의 씨피유가 달렸다고해서 속도가 10배 빨라지는 것은 아니다. 10배에 가깝도록 만드는 것이 본 시스템을 연구하는 사람들의 목적이라고 할 수 있을 것이다. 본 시스템의 강점은 10개의 씨피유중 하나가 맛탱이 가면 전체 다운 대신에 10%의 성능 감소가 일어나는 안정성!에 있다고 할 수 있다.
 이러한 페러렐 시스템은 2종류로 나뉠 수 있는데, 한가지는 대칭형 멀티프로세싱 시스템(예.BeOS)이고 또다른 하나는 비대칭형 멀티프로세싱 시스템이다.  말그대로 씨피유에 부과되는 부하가 대칭적이냐, 아니냐 를 말하고 있는것까지만 알아두자.

두번째 , 분산형 시스템 은 Loosely couple system이라고도 불리며 이는 바로 최신 OS의 경향이라고 한다. 누가?다들...
이것은 패러렐 시스템과 비교되게 여러개의 씨피유가 각각의 메모리와 클럭등을 가지고 있다. 여기에 네트웍을 기반으로 거대한 한개의 시스템을 구성하는 형태를 가지고있다. 그래서인지 이 시스템의 단위는 씨피유라고 불리기 보다 싸이트(site) 라고 불리게 된다. 

그 밖에 실시간 시스템 등이 있지만 , 그런게 있구나 라고 여기시거나 책을 찾아 보시기 바란다. 

'OS > OS 파헤치기!' 카테고리의 다른 글

5. 프로세스의 생성 사용 및 소멸  (0) 2010.09.22
4. 프로세스(process)?  (0) 2010.08.25
3. 하드웨어 보호(Hardware Protection)  (0) 2010.08.17
2장 컴퓨터 구조  (0) 2010.08.16
[공지]시작하며...꼭 읽어주시길.  (0) 2010.08.11
AND

앞으로 여기에 쓰여질 글은 OS에 관한 요약의 글이다. 
딱히 목차 순서대로 진행되어 지진 않는다. 본 목적은 운영체제의 전반적인 개념을 이해하는데에 있기 때문에 가능한한 임펙트하게 기록될 것이다. 
무엇보다 개인적인 공부의 목적이 크기 때문에 'duffer 경준 (http://vorlon.cwru.edu/~kxm73)'님의 글을 거의 그대로 인용하였지만 내용의 문맥은 내가 이해되도록 수정하였고 , 타이핑함으로써 완전히 내것으로 만들기 위한 목적임을 먼저 밝히는 바이다. 쉽게 말해 나혼자 보려고 쓴글이다. 혹시라도 퍼가실 분들은 영리목적이 아닌이상 출처만 밝히시고 가져가길 바란다. 

그럼 이제 시작해 보자.

'OS > OS 파헤치기!' 카테고리의 다른 글

5. 프로세스의 생성 사용 및 소멸  (0) 2010.09.22
4. 프로세스(process)?  (0) 2010.08.25
3. 하드웨어 보호(Hardware Protection)  (0) 2010.08.17
2장 컴퓨터 구조  (0) 2010.08.16
1장. OS란?  (0) 2010.08.12
AND

컴퓨터1은 xp 이고 컴퓨터 2는 우분투 10.04 이다
가끔 필요한대 삼바설정에서 유저를 등록하는걸 까먹어서 글을 남겨본다. 

1. 우분투에서 xp로 의 공유폴더 연결
기본적으로 우분투에 '위치' 메뉴에 '서버에 연결' 이있는데 고놈을 클릭하면 서비스 종류를 선택할 수 있다. 여기서 windows 공유를 선택하고 서버는 컴퓨터1(xp)의 ip주소를 주소창에 입력후 연결을 누르면 우분투에서 xp로 연결이 가능하다 . 물론 xp에서는 공유폴더 설정해놓고 있어야한다.

2. xp에서 우분투로의 공유폴더 연결
기본적으로 samba가 깔려있지 않으므로 우분투에서 samba를 설치해주어야한다. 설치방법으로는 우분투에서 공유폴더하나를 선택해서 우클릭후 공유설정을 클릭하면 이 폴더 공유 를 체크할 수 있다. 처음으로 실행 하게되면 맨밑에 공유만들기 라는 메뉴는 비활성화 되어 있고 ,이상한거를 설치하라고 하는데 이것이 samba 설치하는 것이다. okok 하고 암호 넣고 하면 공유폴더 만들기 가 클릭할 수 있게 활성화된다.
다른사용자가 이 폴더에 파일 생성 지우는 것 허용에 체크하고. 더불어 우분투에 등록된 사용자만 이용하게 하고자 한다면 사용자 계정이 없는 게스트 접속 허용에 체크하면  된다. 아니면 아무나 접속가능.

여기서 중요한점 이것이 끝이 아니다. samba에서 사용하게될 유저와 암호를 등록해야한다.  이것을 하지 않으면 우분투에 등록이 되어 있다고 하더라도 접근할 수 없게된다. 
콘솔에서 이렇게 쳐주자.

sudo smbpasswd -a 유저아이디(현재우분투에서사용자아이디) 

그러면 관리자암호 입력후 사용자 암호까지 입력할 수 있게된다. 

이후 xp에서 실행창이나 폴더주소창이나 아무때나 우분투 컴퓨터의 ip주소를 치면 접속가능 하다.

AND