- 인 터 넷 -1. www 서비스2. telnet 서비스3. ftp 서비스4. e-mail 서비스5. usenet 서비스6. archie 서비스7. 참고site▣ WWW 서비스WWW(World Wide Web, Web 혹은 W3)은 주로 문자를 기반으로 하던 기존의 인터넷 서비스들과는 달리 이미지, 그래픽, 음성 및 동영상을 하이퍼텍스트라는 편리한 방법으로 전송하거나 정보를 검색할 수 있는 서비스를 제공하는 대규모의 분산 하이퍼미디어 시스템이다.WWW의 역사. 1989년 WWW 프로젝트 제안. 유럽 입자 물리학연구소(CERN). 1990년 최초 WWW 구현 프로그램 등장.. 1991년 Hypertext'91 학술대회에서 최초 전시회.. 1992년 World Wide Web이라는 이름으로 정식 발표.. 1993년 웹브라우저 NCSA Mosaic 발표.. 1994년 웹브라우저 Netscape Navigater 발표.. 이후 급속한 인터넷의 증가WWW의 특징. 텍스트 위주의 서비스에서 멀티미디어 서비스로 전환되는 계기. 각종 데이터를 URL을 이용하여 하나의 문서 형태로 통합 제공.. Hyper Text와 멀티미디어로 구성된 문서를 제공.. Hyper Link 형식의 하이퍼미디어 시스템.. 데이터 타입을 MIME 형식으로 정의하여 여러 형태의 데이터를 제공. 브라우저를 이용하여 WWW뿐만 아니라 FTP, Gopher 등 기존의 인터넷 서비스들에 대해 통합 접속도구 역할.. 단점:멀티미디어 데이터의 전송에 따른 네트워크 트래픽 증가. 누구나 사용가능한 쉬운 환경으로 불필요한 정보 증가. 멀티미디어 환경을 이용한 인터넷의 상업화.WWW 관련 용어. 하이퍼 텍스트 (HyperText)자료를 처음부터 끝까지 계속 읽어나가야 하는 보통의 텍스트와는 달리 윈도우 프로그램의 도움말들처럼 중간 중간에 연결된 다른 관련 자료들 사이를 넘나들면서 검색할 수 잇는 텍스트이다.. 하이퍼 미디어 (HyperMedia)하이퍼텍스트의 확장된 개념으로 정보의 저장과 관리를 위해 그래픽, 음성표시 형식 요소들을 조정할 수 있다. 이 교안또한 THML을 이용하여 작성한 것이다.. URL (Uniform Resource Locator)WWW상에 있는 하이퍼미디어 문서를 가리키고 있는 표지판과 같다고 할 수 있다. 즉 인터넷에 존재하는 수많은 정보 자원의 위치를 정확하고 편리하게 표현하기 위한 방법으로 WWW정보의 주소 지정 표기법이다. 또한 이것은 하이퍼텍스트 형식의 문서만이 아니라 FTP, Archie등 인터넷에 존재하는 어떠한 형태의 정보도 가져올 수 있으며 Netscape Navigator, Internet Explorer등의 기타 다른 브라우저들이 목표로 하는 문서에 연결하기 위해 사용하게 되는 프로토콜과 어드레싱 정보를 제공해 준다.. HTTP (HyperText Transfer Protocol)WWW서버에서 사용되는 프로토콜로 인터넷에서 하이퍼텍스트 문서를 교환하기 위해 사용하는 통신규약을 말하는 것이다. 1989년 Tim Berners-Lee가 처음 설계했고 인터넷 기반에서 하이퍼미디어의 광역적인 정보 공유를 위한 프로토콜로 개발되었다.. 웹 브라우저 (Web Browser)WWW를 이용하기 위해서는 HTTP를 지원하는 웹 브라우저라 불리는 특별한 프로그램이 필요한데, 대표적인 것으로 Netscape Navigator, Internet Explorer등이 있다.WWW 구성 및 동작. 클라이언트/서버(Client/Server) 모델을 기본으로 함. 서버는 네트워크에 연결된 다른 컴퓨터에서 문서를 요구할 때 제공해주는 컴퓨터. 클라이언트는 사용자 쪽에서 문서를 요구하는 컴퓨터. 클라이언트에서 서버로 HTTP Request를 보내면 서버에서는Html문서로 Response한다.WWW 관련기술. 자바(Java)자바는 1990년 james Gosling에 의해 연구가 시작되었으며 다음과 같은 특징을 갖는다.. 플랫폼 독립적이다.. 객체 지향 언어이다.. 분산 환경에서 동작한다.. 다중쓰레드를 지원한다.. 동적이다.. 자바 스크립트 (Java Scriall이 개발한 인터프리터 언어로 간략한 프로그램이나 CGI프로그램에 적합한 언어이다. 크기가 작고 간결하며, C언어 구조와 유사하다.. VRML (Virtual Reality Modeling Language)인터넷이나 인트라넷 또는 로컬 클라이언트 시스템에서 상호 작용할 수 있는 3D개체나 세계를 표현하기 위한 파일 형식이다.. XML (eXtensible Markup Language)인터넷 웹을 구성하는 HTML을 획기적으로 개선한 차세대 언어로서 HTML의 확장 언어격으로 홈페이지 구축 기능, 검색 기능 등을 향상시켰을 뿐만 아니라 비즈니스에 필수적인 클라이언트 시스템의 복잡한 데이터 처리를 용이하게 하는 기능을 갖고 있다.인터넷 정보검색WWW이 대중화된 이후 매일 새로운 서버들이 우후죽순처럼 생겨나고, 서버 수 만큼이나 방대하고 다양한 정보들이 제공되고 있다. 따라서 원하는 정보를 찾을 수 있도록 도와주는 검색엔진이 등장하게 되었다.정보검색은 개인이나 조직이 의사결정에 필요한 정보를 찾거나 특정분야에 대한 정보를 수집하는 일연의 과정으로 최소한의 비용과 시간을 투입해 최대한의 효과를 얻어야 한다.. 주제별 검색엔진특정 주제에 대해 각 페이지들을 분류하여 정리해 놓은 검색엔진예) Yahoo심마니. 단어별 검색 엔진하나의 데이터베이스에 모든 URL을 저장하고 특정 키워드를입력함으로써 원하는 정보를 찾음예) AltavistaLycos. 메타 검색 엔진많은 검색 엔진을 한데 모아 검색하기 편리하게 만든 툴예) 미스다찾니▣ Telnet 서비스인터넷상에서 원격지 시스템에 로그인하기 위한 서비스로서 원격 로그인을 위한 가장 일반적인 인터넷 응용 서비스 중 하나이다.Telnet 의 정의. 원격으로 특정의 컴퓨터 기기에 접속할 수 있도록 하는 프로토콜. 특정지역의 사용자가 다른 곳에 위치한 컴퓨터를 온라인으로 연결하여 사용하는 서비스. 네트워크를 통한 원격 로그인 또는 가상 터미널 기능을 제공하기 위한 프로토콜 또는 프로그램. UNIX 시스템의 네트워크로 연결된 터미널속할 경우. telnet songgang.skku.ac.kr 또는 telnet 203.252.53.41② 계정과 Password 를 입력한다.. 접속하려는 호스트에서 부여한 ID 와 Password를 입력해야 한다.③ 원하는 작업을 수행한다.④ 접속을 종료한다.사용 방법. Unix 혹은 DOS환경에서의 Telnet 사용command line 상태에서 다음과 같이 입력함으로써 사용할 수 있다.%telnet 혹은 %telnet 예를 들어 새롬 데이터맨을 이용하여 원격지 호스트인 "dasan.skku.ac.kr"에 접속하는 방법은 다음과 같다.%telnet 203.252.53.42 혹은 %telnet dasan.skku.ac.kr. 웹 브라우저에서 Telnet 사용위의 방법과 동일하게 URL에 telnet://dasan.skku.ac.kr을 입력한다.telnet 접속 후 사용하는 명령어명령어내용Is디렉토리의 파일 목록을 보여준다.cd사용자의 홈 디렉토리로 이동하거나 사용자가 지정한 디렉토리로 이동한다.pwd현재 작업하고 있는 디렉토리의 절대 경로를 보여준다.who현재 시스템에 접속되어 있는 사용자들의 정보를 보여준다.clear현재 화면을 지운다.rm지정한 파일을 삭제한다.mkdir지정한 디렉토리를 생성한다.exit프로세스를 종료한다.▣ FTP 서비스. 인터넷 상에서 파일을 교환하는 기능을 파일전송프로토콜(FTP, File Transfer Protocol)이라 함.. FTP는 인터넷의 한 호스트에서 다른 호스트로 파일을 복사하는 서비스를 제공FTP 동작 흐름도FTP 특징. 파일 전송은 FTP접근을 허용하는 컴퓨터에 사용자 계정이 등록된 사람들만 가능. 보안상의 이유로 해당 컴퓨터에 정당한 사용자로 등록되어 있지 않는 일반사람들은원칙적으로 파일 전송이 불가능. 인터넷을 통하여 서로가 필요한 파일을 공유하고 교환하기 위하여 누구라도 접속할수 있는 익명의 계정(anonymous)을 이용하여 파일을 전송할 수 있는 방법이 있다.이러한 개념이 Anonymous FTP이다.. 자신이 원하는 자료가 있는 디렉토리로 이동한 후 'get'과 같이 get 명령을 이용하여 파일을 가져온다.. 명령어도 필요없이 웹에서 마우스만 선택하면 파일들을 받아 볼 수 있다.FTP 명령어와 기능명령어내용open지정된 FTP 사이트로 연결close해당 FTP접속을 해제dir 또는 is리모트 디렉토리의 파일 목록 표시cd리모트 디렉토리 위치를 변경pwd현재 위치해 있는 리모트 디렉토리 표시binary송수신 파일의 타입을 바이너리로 설정 (이진 모드)ascii송수신 파일의 타입을 아스키로 설정 (텍스트 모드)get지정된 리모트 컴퓨터로부터 파일을 전송 받음mget여러 개의 파일을 전송 받음put지정된 파일을 리모트 컴퓨터에 전송mput복수의 파일을 리모트 컴퓨터에 전송delete리모트 컴퓨터의 파일을 삭제mdelete리모트 컴퓨터에 있는 복수의 파일을 삭제rmdir리모트 컴퓨터의 지정된 디렉토리를 삭제mkdir리모트 컴퓨터에 새로운 디렉토리를 생성lcd로컬 디렉토리 위치를 변경hash파일 전송시 #표시로 전송되고 있는 파일 크기를 표시▣ E-mail 서비스인터넷 망을 통하여 사용자의 인터넷 소프트웨어에 의해서 배달되는 메일 서비스이다.E-mail 의 특징. 인터넷을 통해 누군가에게 전자우편을 보내기 위해서는 받는 사람의 주소와전자우편 프로그램이 필요. 유닉스 시스템에서 사용되는 전자우편 프로그램은 Mail, Elm, Pine 등이 있는데, 주로 Mail을 많이 사용. 간단한 가명(alias)의 사용이 가능하며 모든 종류의 전자우편 프로그램은 가명을 허용. 특정 사람들을 그룹으로 묶어 둘 수도 있다.. 웹 브라우저를 사용하면 마우스 조작에 의해 손쉽게 전자 우편을 사용E-mail 의 동작원리① 송신자가 보낸 편지가 일단 송신자 측의 전자우편을 관리하는 Mail Server에 전달② Mail Server는 수신자의 전자우편 주소를 분석해서 최단 경로를 찾아 근접한Mail Server에 편지를 전달③ 최종 수신자측의 Mail Server에 도착하기까지 연속적으로 헤더와
-인터넷-1.인터넷의 주소체계2.도메인 이름 및 도메인 네임 시스템3.TCP/IP프로토콜4.TCP/IP인터네트워킹5.Topology▣인터넷의 주소 체계인터넷 주소란?-전화망에 가입하면 전화번호가 사용자의 전화에 할당되듯이, 네트워크에 가입된 컴퓨터 에게도 고유의 번호가 부여됨-번호라 하지 않고 주소라 하는 것이 조금 다르긴 하지만 인터넷 주소와 전화번호는 역 할면에서 보면 동일함-전화의 경우, 다른 사람과 통화를 하기위해서는 자신의 전화로 상대방 전화 번호로 걸어 서 서로 연결이 된 후부터 통화를 함-인터넷의 경우,자신의 호스트에서 통신을 원하는 호스트의 인터넷 주소로 통신 연결을 한 후 서로 데이터를 교환함-전화망에 연결된 모든 전화마다 고유한 번호를 갖듯이 인터넷에 연결된 모든 호스트는 고유한 주소를 갖음IP 주소인터넷에 연결된 각각의 컴퓨터들에게 할당된 고유번호네트워크 주소 + 호스트 주소로 구성IP주소의 형태4개의 숫자 (8bit)와 구분점 3개로 이루어짐4개의 숫자 각각의 범위 : 0~255 중 254개 (모든 비트가 0인 것과 1인 것은 사용안함)0과 255는 특별한 용도로 사용 (브로드캐스팅)예) 정보통신연구실 서버 : 203.252.53.41IP주소의 종류.등급 A : 적은 비트의 네트워크 필드를 갖고 있으므로 그리 많지 않은 네트워크에게 할당 될 수 있지만 그 내부에는 많은 호스트 주소를 할당할 수 있다. 또한 32비트라는 제약 때 문에, 등급 A를 부여 받을 수 있는 네트워크 수는 127개를 넘을 수 없다는 제한사항이 있 음. (주소의 처음값이 127인 것은 local host를 가리키는 특수 목적으로 사용).등급 B : 중간 정도 크기의 네트워크를 지원..등급 C : 네트워크의 규모가 작아서 적은 수의 호스트만 존재하는 경우.등급 D : 멀티캐스트라는 형태의 통신을 지원하기 위한 주소.등급 A, B, C는 일대일 통신의 개념으로 사용되는 주소인 반면, 멀티캐스트는 일대다 통 신의 개념..임의의 그룹에 속한 호스트 컴퓨터들은 멀티캐스트 주소를한주소개수예A1∼126N.H.H.H16,777,214102.25.14.210B128∼191N.N.H.H.65,524129.10.21.143C192∼223N.N.N.H.254203.246.40.24D224∼239Multicast ID230.27.140.12IP 주소의 관리.전세계의 IP 관리 : IANA (International Assigned Number Authority) (IP할당은 InterNIC 에서 수행).국내 IP 관리 : 한국 인터넷 정보 센터 (KRNIC)참조 : 한국 인터넷 정보 센터 홈페이지(http://www.krnic.net/)▣ 도메인 이름 및 도메인 네임 시스템이름과 주소. 인터넷에 연결되어 있는 모든 컴퓨터들은 위에서 살펴본대로, 자신만의 고유한 주소 인 IP Address를 가진다.. IP Address는 32bit의 숫자를 사용하고 있으며, 203.252.53.46과 같이 점으로 구분 된 4개의 십진수로 표기 된다..하지만 일반 사용자들은 각각의 시스템에 대한 이 IP Address를 기억하기 어렵기 때 문에, 기억하기 쉬운 이름을 IP에 할당해서 사용하고 있다..실제 컴퓨터가 이를 이해하기 위해서는 도메인 이름을 위와 같은 IP주소로 변환하는과정을 거쳐야한다TLDDNS에는 TLD(Top-Level Domain Names)라고 불리는 한 세트의 이름이 있다. TLD에는 일반 TLD(EDU, COM, NET, ORG, GOV, MIL, INT)와 ISO -3166에서 정의된 두 자리 국가 코드(KR, JP, FR 등)문자가 포함됨.Generic(gTLD)전세계 누구나 사용 가능한 도메인으로서 .com, .net, .org가 있고, 여기에 .firm, .shop, .web, .arts, .rec, .info, .nom이 추가 될 예정이다. .com, .net, .org에 대한 등록 업무는 당분간 InterNIC에서 계속 할 것이며, 신규 생성되는 7개 gTLD의 등록업무는 국내 한국 전산원외 국외 86개 기관에서 수행할 것 이다Na 가진 기관만이 사용할 수 있는 도메인으로서 .int만이 존재한다. 이 도메인 등록·관리업무 는 미국의 IANA에서 하고 있다.Special(sTLD)인터넷의 발전 역사상 미국 내에서만 사용되고 있는 도메인으로서 .edu, .gov, .mil 등이 있다. 교육 기 관들을 위한 .edu, 정보기관이나 단체를 위한 .gov 도메인은 미국의 InterNIC에서, 미국 군대를 위한 .mil 도메인은 미국의 DoD NIC에서 등록·관리하고 있다인터넷 도메인 이름 체계. 인터넷상에서 사용되는 도메인은 전세계적으로 고유하게 존재하여야 하므로 공통적으로 정해진 체계 가 있으며, 임의로 변경하거나 생성 할 수 없다..인터넷의 모든 도메인은 루트(root)라 불리는 도메인 이하에 아래의 그림과 같이 나무 를 거꾸로 위치시킨 역트리(inverted tree) 구조로 계층적으로 구성되어 있다..루트도메인 아래의 단계를 1단계 도메인 또는 최상위 도메인(TLD, Top-Level Domain) 라고 부르며 다음 상위 단계를 2단계 도메인(SLD, Second-Level Domain)이라 부른 다..최상위 도메인으로는 com, net, org, edu, gov, mil, int 등 인터넷 초창기부터 사용되던 7개의 일반도메인(generic top level domain )과 인터넷이 국제화되면서 ISO 3166에 의 거하여 세계의 각 국가들을 두 자리 영문약자로 표현한 약 190여 개의 국가도메인 (national top level domain)을 포함하여 전세계 적으로 약 200여 개의 최상위 도메인이 있다.▣ TCP/IP 프로토콜TCP/IP 게요. TCP/IP : 문자 그대로는 전송제어프로토콜 (Tramission Control Protocol)과 인터넷 프로 토콜(Internet Protocol)을 의미한다.. ISO의 7계층 구조에 의하면 TCP는 계층4에 그리고 IP는 계층3에 해당되는 프로토콜 의 이름이다.. 보통 TCP/IP라고 말하면 이는 계층3, 계층4 프로토콜만을 얘유측면과 정보의 교환 측면에서 네트워크를 서로 접속해야하는 필요성 대두되 었고, 이 때, 네트워크간의 접속에 필요한 프로토콜이 필요한 것이다. 이 프로토콜로서 TCP/IP 프로토콜이 존재하며 이 프로토콜을 사용하여 서로 접속된 네트워크를 인터넷 (Internet)이라 한다.프로토콜 계층 구조TCP/IP는 단순히 프로토콜만을 의미하는 것이 아니라 OSI의 네트워크 계층, 전송 계 층, 응용 계층을 모두 포함하는 TCP/IP네트워크 구조를 의미한다.ARP (Address Resolution Protocol)네트워크 계층의 주소를 링크 계층의 주소로 변환하는 기능을 제공하는 프로토콜이다.RARP (Reverse Address Resolution Protocol)ARP와 반대로 링크 계층의 주소를 네트워크 계층의 주소로 변화해 주는 프로콜이다.이 과정은 주로 디스크가 없는 시스템이 부팅할때 자신의 네트워크 주소를 알기 위해 사 용하는 프로토콜이다.IP (Internet Protocol)사용자 데이터를 담은 패킷을 패킷 내에 포함된 주소의 목적지로 경로를 설정하고 전달하 는 프로토콜이다. IP프로토콜은 IP주소라고 하는 자신만의 주소 체계를 가지고 있다.ICMP (Internet Control Message Protocol)IP네트워크의 관리 또는 흐름 제어를 수행한다. IP가 흐름 제어 등의 기능을 수행하지 않 아서 이를 보완하기 위한 수단으로 ICMP프로토콜을 이용한다.IGMP (Internet Group Message Protocol)IP의 멀티캐스팅을 지원하기 위한 프로토콜이다. 멀티캐스팅 그룹에 등록된 시스템들은 서로 간에 멀티캐스팅 서비스를 이용할 수 있다.TCP (Transmission Control Protocol)두 종단 간에 연결을 설정한 후 데이터를 전송하는 접속형(Connection-Oriented)프로토 콜이며, 데이터를 스트림 방식으로 보낸다.UDP (User Datagram Protocol)종단 간에 연결을 설정하지 않고 데이터를 전송하는 비우 프로토콜 변환을 수행함..다음 그림은 네트워크 A, B, C사이에 놓여있는 게이트웨이를 나타낸다..네트워크 A, B, C는 서브네트워크(subnetwork)라고 부른다..서브 네트워크 : 다음 그림에서 보는 바와같이 세개의 네트워크가 하나의 논리적인 네트 워크를 이루어 망간 상호접속을 위한 완전한 동작을 수행한다는 의미..망간 상호접속을 수행하는 게이트웨이는 최종 사용자에 대해서는 투명성(transparency) 을 유지하도록 설계..최종 사용자 응용(application)은 네트워크에 접속되어 있는 호스트에 설치..이러한 방식은 몇가지 측면의 장점을 갖는다.- 첫째, 게이트웨이는 응용 계층의 프로토콜을 수행하기 위한 부담을 갖지 않는다.- 둘째, 게이트웨이를 분리함으로써 게이트웨이는 어떠한 형식의 응용 프로그램도 지원할 수 있다.TCP/IP 동작 예.위의 그림은 서브네트워크와 게이트웨이의 프로토콜 계층관계를 나타내고 있다..호스트 A에 있는 사용자 응용이 응용 PDU를 호스트 B에 있는 응용 계층 프로토콜로 전 송 한다고 가정하자..파일 전송 소프트웨어는 다양한 기능을 수행하며 사용자 데이터에 파일 전송 헤더를 덧붙 인다..호스트 A에 있는 프로토콜 스택에서는 화살표의 방향이 아래로 향하고 있으며, 따라서 데 이터 단위(사용자 데이터)는 전송 계층 프로토콜인 TCP로 전달된다..TCP는 몇 가지의 기능을 수행하며 역시 자신에게 전달되어 온 PDU에 헤더를 덧붙인다. -->데이터 단위를 세그멘트(segment) 라 부른다..TCP는 상위 계층으로부터 전달되어 온 PDU를 데이터로 간주한다..다음에는 TCP가 자신이 구성한 세그멘트를 네트워크 계층으로 전달하며, 네트워크 계층 은 IP를 수행한다..IP도 역시 자신만의 서비스를 수행하며 헤더를 덧붙인다..데이터 단위(데이터그램(datagram)이라 부름)는 하위 계층으로 전달된다.. 데이터 링크계층은 다시 헤더를 덧붙일 뿐만 아니라 트래일러 (trailer)도 덧붙인다..데이터 링크계층에서 구성된 데이터 단위정.
-인터넷 1-1. 네트워크의 기본 개념과 프로토콜2. 개방형 시스템과 폐쇄형 시스템3. OSI 참조모델4. 인터넷의 개념5. 인터넷의 역사6. 인터넷 관리 기구7. SITE소개▣네트워크의 기본 개념과 프로토콜-네트워크 : 컴퓨터들과 다른 장치들이 서로 연결되어 있는 상태.-프로토콜 : 두 대의 컴퓨터가 원하는 정보(메시지)를 교환하기 위한 메시지 형태의 기본 규칙을규정해 놓은것. 혹은, 컴퓨터끼리 또는 컴퓨터와 단말기 사이에 상호 통신.-통신 프로토콜 : 서로 다른 시스템에 있는 두 개체(entity)간의 데이타 교환을 원 활히 하기 위한일련의 통신 규약-개체 : 정보를 보내거나 받을 수 있는 것으로 사용자 프로그램, 데이타베이스 관리 시스템, 전자우편 시스템 등을 의미-시스템 : 하나 이상의 개체를 보유하고 있는 컴퓨터 시스템 등.□통신 프로토콜의 구성요소구문(syntax) : 데이타 형식, 코딩, 신호레벨 등의 특정한 형식의미(semantic) : 제어정보로 조정과 에러 처리를 위한 정보 등타이밍(timing) : 속도 조절과 순서 관리를 위한 타이밍 기법□통신 프로토콜의 특성1. 두 개체 사이의 통신 방법은 직접 통신과 간접 통신방법이 있음2. 프로토콜은 단일 구조 또는 계층적 구조로 구성될 수 있음3. 프로토콜은 대칭적이거나 비대칭적일 수 있다.4. 프로토콜은 표준이거나 비표준일 수 있다.▣개방형 시스템과 폐쇄형 시스템-폐쇄형 시스템 : 네트워크를 구성한 제조업체마다 서로 자신만의 교유한 프로토콜을 이용하여 한정된 범위 내에서만 통신을 하는 시스템 환경.-개방형 시스템 : 서로 다른 특성을 가지고 있는 컴퓨터나 정보 처리기기들 사이에서의 상호 연결이가능한 시스템으로 언제 어디서나 제조업체나 기종에 상관없이 접속할 수 있는 시스템을 통틀어 말함▣OSI 참조모델-Open System Interconnection-ISO에서 표준화된 망구조를 제공하는 기본 참조모델로 제정-통신망을 통한 상호접속에 필요한 제반 통신절차를 통신절차 가운데 기본적으로 비슷한 기능을닌 개방형 시스템간의 연결을 의미그 모델의 정립에 있어서 어떤 특정 시스템이나 제품을 모델로 삼은 것이 아니고, 시스템간의 통신에 있어서 요구 또는 고려되어지는 사항들 을 정리, 추상화시켜 모델로 정립OSI는 시스템간의 정보 교환만을 다루는 것은 아니며, 시스템끼리 어떤 공동의 일을 하기 위한 상호협력관계 등에도 관계됨예를 들어 프로세스 간의 통신, 데 이타의 표현, 데이타의 저장, 프로세스 및 자원 관리 등 ISO에서는OSI(open systems interconnection, 개방형 시스템간 상호 접속)라고 불리 는 7 계층의 데이터 통신모델을 제정각 계층은 하나이상의 고유한 통신 기능을 수행하며 고유한 규정을 갖음.모델의 각 계층은 바로 아래와 위의 계층에 대해 각각 클라이언트와 서버의 역할을 수행OSI는 특정 제조업체에 의존하지 않는 중립적인 기관이 결정한 표준적인 통신의 규칙OSI의 구성 계층1. 물리 계층(Physical Layer)2. 데이터링크 계층(Data link layer)3. 네트워크 계층(Nework layer)4. 전송 계층(Transport layer)5. 세션 계층(Session layer)6. 표현 계층(Presentation layer)7. 응용 계층(Application layer)OSI 각 계층의 기능1계층 : 물리 계층(physical layer)-상위 계층에서 내려온 비트들이 상대방까지 보내질 수 있도록 근원지와 목적지간의 물리적 링크를설정, 유지, 해지하기 위한 물리적, 전기적,기능적 그리고 절차적인 특성을 제공-각 비트열의 0과 1에 해당하는 신호의 표현 방법과 신호를 송신하는지 수신하는지를 어떻게 알릴것인가 등등에 대한 신호레벨에서의 기능을 담당2계층 : 데이터 링크 계층(Data Link Layer)-채널상으로 데이터를 전송하는 기능을 담당하는 계층-기능1. 물리적 링크를 통해 전송되는 데이터블럭의 시작과 끝 인식2. 물리적 링크를 통해 유입된 전송에러 검출과 회복3. 여러개의 기계들이 하나의 통신회선을 공유할 때의 인터페이스에 관계된 제어 기능을 담당하는 계층으로 데이터전송에 대한 경로를 설정하는 역할을 담당한다.-기능1. 데이터가 어떤 경로를 통해 전달될 것인지 결정2. 네트워크 내에서의 데이터를 다른 노드로 넘겨주는 릴레이(Relay)기능3. 상위계층에서 넘겨진 데이터를 일정 크기의 패킷으로 분할 및 재조립4계층 : 수송 계층(Transport Layer)-OSI는 전송 계층을 기점으로 그 하위 계층으로 이루어진 네트워크 서비스와 상위 계층으로 이루어진 사용자 서비스로 대별할 수 있다.서비스특 징물리계층과 네트워크계층간 서비스주로 이용자와 무관하게 네트워크내에서의 데이터 전달을 위한 통로형성을 책임세션 계층과 응용계층간 서비스주로 이용자의 메시지 표현형식과 같이 주로 이용자 서비스와 관련된기능을 제공전송계층-위의 두 서비스를 연결하는 인터페이스-세션을 맺고 있는 두 사용자 사이의 데이터전송을 위한 end-to-end제어를 담당-네트워크 서비스 계층에서 잡아주지 못하는 데이터의 에러나 이중처리등에 대한 에러제어 기능과 흐름 제어(flow control)5계층 : 세션 계층(Session Layer)-특정한 한쌍의 프로세스들 사이에서 세션이라 불리는 연결을 확립하고 유지한다. 프로세스란 실제이용자의 응용프로그램같은 것을 의미한다.-다른 쪽의 프로세스와 대화하기 위해 양단간의 연결을 설정-흐름이 원활히 이루어지도록 동기에 대한 기능을 제공-전이중 혹은 반이중 전송과 같은 데이터 전송방향을 결정하는 등의 기능을 제공6계층 : 표현 계층(Presentation Layer)-표현 계층은 이용자가 통신하거나 참조할 수 있도록 정보를 표현하는 기능을 담당-변환서비스의 대표적인 예 : 데이터압축, 암호화-서로 다른 데이터 표현 형태를 갖는 시스템끼리의 상호접속을 위해 필요7계층 : 응용 계층(Application Layer)-최상위 층으로 응용 프로세스(이용자나 응용프로그램 등)가 네트워크 환경에 접근하는 수단을 제공함으로써 응용 프로세스들이 상호간에 유용한 정보교환을 할 수 있 바른 길을 제시한 것은 매우 큰 공로로서인정됨▣인터넷의 개념-Internet : Internet은 TCP/IP Protocol을 사용하여 서로 연결된 네트워크를 의미하는 것으로 일반적으로 말하는 인터넷이다.-internet : 상호 접속 프로토콜을 이용하여 네트워크와 네트워크를 연결한 네트워크를 의미하며,Internet은 internet의 한 종류로 포함된다인터넷은 TCP/IP라는 프로토콜을 사용하는 수많은 컴퓨터들이 서로 연결된 전세계에서 가장 큰 통신망입니다.인터넷은 1969년 미국 국방성의 ARPA 연구원들에 의해 구축된 ARPANET에서 시작하여 오늘날거대한 망에 이르게 됨우리나라는 1980년대에 이르러 교육망과 연구망 이 비로소 시작90년대에 이르러 KORNET, 데이콤 인터넷, 아이네트 등에 의해 상업망이 시작되어 본격적인 인터넷서비스를 시작PC를 사용하여 각 가정에서도 인터넷을 바로 접근하여 e-mail, WWW, FTP, TELNET 등의 서비스를받을 수 있음최근에는 인터넷 상에서 멀티미디어를 이용한 다양한 서비스(인터넷 전화, 화상회의)가 가능인터넷의 특징-세계 최대 통신망으로 네트워크의 집합(Network of networks)-관리를 위한 호스트 컴퓨터나 통제기관이 없음-수천만의 서버를 수억의 사용자가 이용하는 클라이언트/서버 시스템-TCP/IP라는 표준 프로토콜을 사용-E-Mail, Telnet, FTP, Usenet News, Gopher, IRC, BBS, WWW, 인터넷 방송, 화상회의 등 다양한서비스를 제공▣인터넷의 역사1969년 미국 국방성(Department of Defense)은 적의 공격에도 안전한 통신체계를 구축, 어느 한 부분의 기능이 상실되더라도 나머지 네트워크가 제 기능을 수행할 수 있도록 알파넷(ARPANET)이란프로젝트를 수행함.이후 1970년대말에 이르러 알파넷의 규모가 커짐에 따라 기존의 네트워크 관리 프로토콜(NCP)로는관리가 힘들게 되었고, 결국 현재 인터넷의 표준 프로토콜로 사용되는 전송관리 프로토콜/인해 BITNET, Usenet 등이 생겨났고, 이후 점차적으로상용 네트워크가 생겨나게 됨으로 인해, 현재의 인터넷은 기하급수적으로 사용자가 증가하는 모든네트워크가 결합된 집합체가 됨인터넷의 역사1969.9.2 ARPANET 개통1972 E-Mail프로그램 개발, Telnet표준안(RFC 318) 발표1973 FTP표준안(RFC 454) 발표1977 Mail표준안(RFC 733)1979 Usenet시작1982 TCP/IP 도입(인터넷 개념 정립)1983 ARPANET이 ARPANET과 MILNET으로 분리, 인터넷 시작1984 DNS(Domain Name System) 제시1986 NNTP(Network News Transfer Protocol) 개발1988 IRC(Internet Relay Chat) 개발1990 ARPANET폐지, Archie시작1991 Wais시작, Gopher시작1992 WWW(World Wide Web)시작, Veronica시작1993 InterNIC 창설현재 195개국, 2천 9백만대 이상의 호스트 컴퓨터가 연결되어 있는 최대 통신망으로 발전국내 인터넷의 역사1982 서울대-KIET간 TCP/IP로 SDN구축1983~84 미국,유럽에 UUCP연결 사용1987~89 교육연구망 구성(ARPNET,BITNET연결)1990~91 연구망에서 인터넷 연결(HANA/SDN:56Kbps)1992 교육전산망, BITNET, MAIL Gateway구축1993 HANA/SDN, 해외접속회선 확충(56Kbps 256Kbps)HANA/SDN, 일반인에게도 계정 개방199 한국통신에서 본격적인 상용 접속 서비스 제공1995 본격적인 접속 서비스 회사인 INET의 탄생SLIP프로토콜을 이용한 인터넷 접속 서비스 제공현 재 70여개 인터넷서비스 제공업체(ISP;Internet Service Provider), 약46만개의 호스트 서버, 1600만명의 사용자가 인터넷에 연결▣인터넷 관리 기구인터넷 관리 기구들은 1960년 말 미국방성에서 지원한 ARPANET을 시작 역할을
-프로그래밍 언어1-1. 프로그래밍 : 개념과 방법2. 프로그래밍 언어의 종류(1)3. 프로그래밍 언어의 종류(2)4. 번역기와 해독기5. 널리 사용되는 프로그래밍 언어들(1) / (2) / (3) / (4)6. 프로그램의 구성(1)7. 프로그램의 구성(2)8. SITE소개▣ 학습목표프로그래밍 언어는 프로그래머와 컴퓨터가 서로 대화할 수 있는 수단으로써, 프로그래밍 작업을 쉽게 할 수 있도록 지원하는 언어이다.본 장에서는 프로그래밍 언어의 전반적인 개요에 대해서 살펴보고자 한다.먼저 프로그래밍 언어에 대한 기본 개념과 실례로 많이 사용되어 왔거나 현재 사용되고 있는 각종 프로그래밍 언어들의 특성에 대해서 알아본다.또한, 프로그램의 처리 방법과 프로그램의 구성 요소들에 대해서 소개한다.▣프로그래밍 개념과 방법컴퓨터 프로그램을 배워야 하는 이유프로그래밍 언어는 프로그래머와 컴퓨터가 서로 대화할 수 있는 수단으로써, 프로그래밍 작업을쉽게 할 수 있도록 지원하는 언어이다.프로그래밍 언어는 주어진 문제나 작업의 특성에 따라 여러 유형으로 분류할 수 있다. 따라서, 프로그래머는 프로그래밍을 하기 위해서 문제 특성에 적절한 프로그래밍 언어를 선택하고, 이에 대한이해 및 사용법을 습득할 필요가 있다.또한, 프로그래밍을 구성하는 명령어들이 논리적인 흐름에 맞지 않거나 정해진 규칙에 위반될 경우에는 명령어들이 수행되지 않거나, 프로그래머가 원하지 않는 결과가 초래될 수 있다. 프로그래머는해결하고자 하는 문제나 작업을 분석한 후에, 이를 처리하기 위한 올바른 명령어들을 선택하여 정확하게 수행되도록 프로그램 코드를 작성해야 한다.이러한 이유로 프로그래머는 프로그래밍 언어들을 익히고 공부해야 한다.관련 용어프로그램(program)사용자가 갖고 있는 문제의 해결이나 원하는 작업을 수행할 수 있도록 하기 위한 명령어들의 집합.프로그래밍(programming)-수식이나 작업을 컴퓨터에 알맞도록 정리해서 순서를 정하고 컴퓨터 특유의 명령코드로 고쳐 쓰는 작업을 총칭해서 프로그래밍이라 한다.r)에 있는 현재의 값을 11001번지에 있는 Y값으로 바꿈.1*************번지에 있는 Y값과 누산기에 있는 Y값을 더함.1*************번지에 있는 누산기 내의 X값을 저장.관련 용어누산기(accumulator)누산기는 CPU 내에서 계산의 중간 결과를 저장하는 레지스터.만약 누산기가 없다면, 덧셈이나 곱셈 및 자리이동 등과 같은 각 계산의 결과를 주기억장치에 기록할 수밖에 없으며, 필요한 경우 그것들을 다시 읽어와야 한다.누산기는 처음에는 0으로 설정되며, 각 숫자는 차례로 누산기 내에 있는 값에 더해진다. 그리고 모든 숫자들이 다 더해졌을 때에만, 그 결과가 주기억장치에 기록된다.어셈블리 언어(Assembly Language)어셈블리 언어(assembly language)는 기계어 다음 단계의 높은 수준의 프로그래밍 언어로서, 기계어프로그램을 작성하는데 있어서의 어려움을 줄이기 위해서 개발되었다.어셈블리어는 숫자로만 되어있는 기계어 대신에 문자나 기호를 사용하여 어느 정도 인간이 이해할 수있는 상태로 바꾸어 놓은 언어이다.□특징-어셈블리 언어를 사용하기 위해서는 어셈블러(assembler)라고 하는 언어 번역기(languageranslator)를 필요로 한다.-어셈블리 언어는 연산 코드(operation code)와 기억 장소(storage location)를 나타내기 위해서 니모닉(mnemonic)이라 불리는 알파벳 약어와 다른 기호(symbol)를 사용하므로 "기호언어(symboliclanguage)"라고 불린다.-컴퓨터 제조업자들은 특정 계열의 고유한 기계어 명령어 집합(instruction set)을 반영하는 어셈블리언어를 제공하고 있다.관련 용어니모닉(mnemonic)인간이 기억하기 쉬운 형태로 간략화한 코드.기계어나 기계의 동작을 사람이 알아보기 쉬운 형태로 표시할 때 사용.♠기계어와 어셈블리 언어의 비교구분표현의미기계어01011010덧셈어셈블리 언어ADD덧셈□장점-실제 숫자로 된 자료번지 대신에 니모닉 코드가 사용되므로 기리 시스템에 의하여 제공되는 질의어(query language),보고서 작성기(reportgenerator),자료 조작 언어(data manipulation language) 등이 4세대 언어로 여겨진다.-4세대 언어는 사용자가 원하는 결과를 얻기 위해 어떻게 처리해야 하는가를 컴퓨터에게 알려주는절차(procedure)를 작성할 것을 필요로 하지 않기 때문에, 비절차어라고도 불려진다.▣번역기와 해독기5장 언어처리기에서 "번역기와 해독기" 부분 참조□해석기법과 번역기법의 비교대표적인 해석기법의 한 예인 인터프리터와 대표적 번역기법의 한 예인 컴파일러를 기준으로 설명.인터프리터컴파일러목적프로그램없다있다연산 속도비효율적효율적기억 장치의 이용효율적비효율적프로그램 수정용이복잡대화식 처리가능불가능대표적 언어BASIC,LISP,APLFORTRAN,ALGOL,C,COBOL,PL/1,PASCAL▣널리 사용되는 프로그래밍 언어들 (1)FORTRANFORTRAN은 수치 계산용 언어로써 수식(Formular)과 변환기(Translator)의 약자이다.□특징-수학자 및 기타 다른 과학적 알고리즘의 제작자나 사용자들을 위해 설계된 언어.-1950년대 말에 IBM의 John Backus에 의해 설계되었으며, 매우 간결하고 엄격한 구문 형식을 가지고 있다.□장점-포트란은 산술 기호(+, - 등)를 그대로 사용할 수 있으며, 삼각함수·지수함수·대수함수 등과 같은기초적인 수학 함수들을 그대로 불러내어 쓸 수 있는 언어이므로 수치 계산에 효율적이다.□단점-언어의 구조가 간단한 반면, 엄격한 구문 형식을 가지고 있으므로 프로그래밍 시 오류를 범할 가능성이 크다.COBOLCOBOL은 사무 처리를 위한 컴퓨터 프로그래밍 언어이며, common business oriented language의약어로 컴퓨터의 프로그래밍을 쉽게 하기 위하여 고안된 프로그램 언어이다.□특징-미국 국방부을 중심으로 결성된 프로그램 언어로서 그룹 CODASYL(Conference on Data systemLanguage)에 재사용이 어려우며, 다른 사람에 의해 프로그램을 유지보수하기도 어렵다.▣널리 사용되는 프로그래밍 언어들 (2)ALGOL정식 이름은 algorithmic language로 과학기술 계산용 프로그래밍 언어 가운데 한 가지로, 산법을 나타내기 위해 만들어진 컴퓨터용 인공 언어이다. 주로 과학 계산용으로 사용된다.□특징-1960년에 국제정보처리학회연합(IFIP)에서 유럽의 학자들을 중심으로 설계되었다.-프로그래밍 언어 이론에 많은 영향을 끼쳤으며, 알고리즘을 기술하기 위해 사용되기도 한다.□장점-정연한 언어 이론을 바탕으로 설계된 최초의 언어이다.□단점-지나치게 이상적인 언어로 설계되었고 입출력 기능도 약하여 실무에 널리 적용되지 못하고, 유럽에서만 일부 사용되거나 교육용으로 사용되고 있다.PL/1어셈블러 언어와 COBOL 및 FORTRAN의 대안으로서 1960대 IBM에서 개발한 범용 언어로, PL/I은"Programming Language 1"의 약자이다.□특징-수치계산,상업응용,시스템 프로그래밍 분야에서 이용되며 각 언어의 장점들을 거의 포함.-C가 나오기 이전까지는 IBM이 운영체계나 응용프로그램 개발용으로 주로 선택하던 언어이다.APL1926년에 발간된 K.E.Lversion의 'A Programming Language'를 통해 처음 소개된 언어이다.□특징-과학적인 계산을 위한 언어라고 평가되는 경우가 좀더 많지만, 다른 목적에도 사용될 수 있다.-데이터를 조작할 때, 아스키가 아닌 특수한 심볼의 세트로 표현할 수 있으며, 대부분의 다른 언어들을 사용하는 것보다 프로그램의 길이가 짧은 편이다.-프로그램들은 대화식으로 개발될 수 있으며, 보통 컴파일보다는 인터프리터 방식으로 사용된다.-특별한 기호들을 화면에 표시하고, 프린트하기 위해서는 특수한 키보드와 편집기가 필요하다.LISP문자열을 쉽게 다루기 위해 설계된 프로그래밍 언어로 1959년에 John McCarthy에 의해 개발되었다.LISP은 인공지능 분야의 프로그래밍에 보편적으로 사용되는 언어이다.□특징-프체란 한 무더기의 데이터이다. 사람이나 고양이,공책이 따지고 보면 세포, 분자,원자와 같은 것으로 구성되어 있는 것처럼 객체에는 수치,비트맵, 레코드, 블럭, 어떤 것이든 해당된다. 또한 이들은 능동적인 데이터이다. 데이터만 있는 것이 아니라 함수도 포함되어 있다. 따라서 객체는 소유하고 있는 데이터를 가지고 그들 스스로를 처리한다.객체지향 프로그래밍(Object Oriented Programming)객체지향 프로그램은 C, Pascal, BASIC 등과 같은 절차형 언어(procedure-oriented programming)가 크고 복잡한 프로그램을 구축하기 어렵다는 문제점을 해결하기 위해 탄생된 것이다."객체지향(object-oriented)"이라는 용어는 프로그램이 다음 두 가지 주요 속성을 지닌 "객체들"로 이루어져 있다는 개념을 말한다.그들이 보유하고 있는 것을 정의하는 데이터그 객체와 연관된 함수들, 그들은 그것의 데이터를 조작하거나 다른 객체들과 대화(상호작용)한다.즉, 객체지향 프로그래밍은 객체라는 단위로서 모든 처리를 기술하는 프로그래밍 방법이다.이 방법으로 프로그램을 작성할 경우 프로그램이 단순화되고, 생산성과 신뢰성이 높은 시스템을 구축할수 있다.ADA1978년 미국 국방부에서 소프트웨어 개발을 위한 표준적인 프로그래밍 언어의 선정을 위하여 그 설계를 공모하게 되었으며, 여기에서 선정된 언어가 ADA이다.□특징-파스칼 언어에서 처음으로 사용된 구조적 개념을 기반으로 하여 만들어진 범용 프로그래밍 언어로써 강력하고 정교한 기능을 가지고 있다.-안전도,유지보수,인간의 활동과 효율에 중점을 둔 언어이다.-종전의 컴퓨터와 다른 프로그래밍 환경을 가지고 있다.□장점-대규모 프로그램의 개발과 유지보수를 용이하게 하기 위한 기능이 높이 평가되고, 직업적인 프로그래머가 본격적인 프로그램을 쓰기 위한 언어로서 설계되었다.C벨 연구소에서 1971년경부터 D.M.Ritchie등에 의해서 설계 개발된 시스템 기술용의 프로그래밍 언어이다. C는 UNIX 오퍼레이
- 운영체제 -1. 운영체제의 개요2. 운영체제의 발달과정3. 운영체제의 구성4. 운영체제의 분류5. 운영체제의 기능6. UNIX 와 Windows계열의 운영체제7. 운영체제의 미래8. SITE소개▣ 학습목표운영체제는 어떤 컴퓨터 시스템을 작동시키기 위해서 반드시 필요한 소프트웨어이다.운영체제가 탑재되어 있지 않은 컴퓨터 시스템에서는 어떤 다른 프로그램도 동작될 수 없으며 컴퓨터 하드웨어이 동작도 불가능하다.▣운영체제의 개요1.정의-어떤 컴퓨터 시스템을 작동시키기 위해서 반드시 필요한 소프트웨어이다.-운영체제가 탑재되어 있지 않은 컴퓨터 시스템에서는 어떤 다른 프로그램도 동작 될 수 없음.2.역활□사용자 인터페이스(User Interface)-운영체제의 역할 중 사용자 입장에서 본 운영체제의 역할.-운영체제가 하드웨어의 구조나 작동 과정등에 관련한 복잡한 작업들을 대신해주므로, 사용자는운영체제가 제공하는 간단한 명령만으로 편리하게 컴퓨터를 사용할 수 있음.-기존의 키보드를 이용하여 Text형태의 명령어를 입력하도록 하던 환경에서 그래픽 사용자 인터페이스(GUI: Graphical User Interface)환경으로 변화.그래픽 사용자 인터페이스(GUI: Graphical User Interface)- 순전한 텍스트보다 그래픽을 통해 사용자와 컴퓨터간 인터페이스를 구현.- 윈도우(window), 풀다운 메뉴(full down menu), 스크롤 바(scroll bar), 아이콘(icon) 이미지등의 형태로 각종 작업들을 제공함으로써 사용자들에게 편리함을 줌.[참고] Windows/Linux 환경에서의 GUIWindows xp의 UI Linux 환경에서의 GUI KDE의 UIGNOME의 UI□자원 관리 기능- 자원의 사용에 대한 제어 및 관리- 자원에 대한 공유 지원- 자원의 상태 관리- 자원에 대한 동시 사용 중재.· 여러 사용자들이 동시에 하나의 컴퓨터 시스템을 사용하는 다중사용자 시스템(multi-user system)에서 특히 중요한 기능.· 다중 사용자 나 실행단계도 모두 프로그래머 또는 컴퓨터 운영자(operator)의 수작업으로 수행.□1950년대 초-미국 GM사의 연구소에서 IBM-701 컴퓨터를 위해 최초의 운영체제 개발.-1950년대 운영 체제들은 컴퓨터 시스템에서 한 작업의 종료와 다른 작업의 시작 사이에 발생하는시스템의 유휴시간을 줄이는 것을 목적을 둠.-이러한 작업들간의 전이(transition)를 위한 과정을 자동화하는 운영체제가 탄생하였고 이것이 일괄처리 시스템의 효시가 됨.-이후 일괄 처리 운영체제 다수 탄생.□1950년대 말-시분할 시스템을 위한 운영체제 탄생.-미국 MIT의 MAC프로젝트의 결과로 IBM-7094에 탑재되는 운영체제 CTSS개발(최초의 시분할 운영체제)-CTSS환경에서의 새로운 운영체제 Multics개발.□1960년대 말-Bell 연구소에서 Multics의 단점을 극복하고 작은 규모이면서도 다양한 기능을 가지는 운영체제의개발을 시도.-UNIX 운영체제 탄생.□1970년대 이후-개인용 컴퓨터를 위한 운영체제의 개발 진행.-분산 처리 시스템의 개념이 확립.□운영체제의 최근 발달 과정▣운영체제의 구성-운영체제는 사용자 프로그램들과 하드웨어와의 중간에 위치.-운영체제는 크게 커널과 유틸리티 프로그램의 두 부분으로 나누어지며, 시스템호출(system calls)은이 두 부분의 연결을 위해 사용됨.-운영체제의 구조를 그림으로 나타내면 아래와 같다. 즉, 하드웨어와 응용프로그램(applications) 사이가 운영체제가 된다.[그림] 운영체제의 구조□커널(Kernel)-커널은 부팅(booting) 후 주기억장치에 상주하는 OS의 핵심부분. 사용자 및 실행 프로그램 들을위해 빈번히 사용되는 기능 등을 담당하며, 주로 자원의 관리 기능을 당당.-커널은 다른 말로, 핵 (nucleus), 관리자 (supervisor) 프로그램, 상주 프로그램 (residentprogram), 제어 프로그램 (control program) 등으로 불리워지기도 함.운영체제 중 빈번히 사용되는 부분을 주기억장 관리.· 단일 태스킹 운영체제와 다중 태스킹 운영체제로 나눌 수 있음.· 주로 소형 컴퓨터(micro computer), 개인용 컴퓨터(personal computer)에서 주로 사용됨예) PC의 Windows 95/98/me나 MS-DOS등.다중 사용자시스템· 한 컴퓨터 시스템에 대해 동시에 여러 사용자들이 사용할 수 있도록 구성된 시스템.· 여러 사용자들의 파일이 하나의 컴퓨터 시스템에 저장되므로 이에 대한 관리 기능 필요.· 주로 워크스테이션과 같은 수퍼마이크로 컴퓨터(super-micro computer),중형급(mini-computer)이상의 컴퓨터 시스템들에서 사용됨.예) UNIX, VMS(Digital사의 VAX용), MVS(IBM사의 대형 컴퓨터용) 등.2. 단일 태스킹 시스템과 다중 태스킹 시스템단일 태스킹시스템· 하나의 작업이 완전히 완료되고 난 후에야 다음 작업을 수행할 수 있게 되는 시스템.· 단일 태스킹 시스템은 모두 단일 사용자 시스템.· 주기억장치에 한 프로그램만이 적재되므로 주기억장치 관리 용이.예)IBM-PC의 MS-DOS.다중 태스킹 시스템· 한 컴퓨터 시스템에서 동시에 여러 프로그램들을 실행될 수 있도록 구성된 시스템.· 여러 프로그램들이 동시에 주기억장치에 적재되어야 하므로 주기억장치 관리가 복잡함.예) Windows 95/98, UNIX, VMS, MVS 등.위의 분류에 따라 각 운영체제를 다음과 같이 구분할 수 있다.- 단일 사용자, 단일 태스킹 운영체제 : MS-DOS- 단일 사용자, 다중 태스킹 운영체제 : Windows 95/98/me- 다중 사용자, 다중 태스킹 운영체제 : Unix, Linux, VMS, MVS, VM, Windows NT/2000운영체제의 분류(2)운영체제를 컴퓨팅 환경에 따라 다음과 같이 분류할 수 있다.일괄 처리 시스템정의· 사용자들의 작업 요청을 일정한 분량이 될 때까지 모아 두었다가 한꺼번에 처리하는 방식의 시스템특징· 사용자들이 천공 카드(punch card) 등의 입력 매체에 자신의템특징제한 시간을 가지고 입력되는 작업을 제한 시간 내에 수행하지 못하게 될 경우, 치명적인 결과 초래관련 용어LAN(Local Area Network)공간적 규모가 큰 지역 즉, 도시·국가 또는 전세계로 연결되는 통신망인 WAN(wide area network:광역통신망)에 상대되는 개념. LAN의 특징은 광대역 전송에 사용되는 통신 매체를 사용하여 고속 통신이가능하고, 통신망 내의 어떤 기기와도 통신할 수 있고, 통신 오류율이 매우 낮으며, 경로 선택이 필요없고, 방송형태의 이용이 가능하며, 접속하는 기기들의 값이 싸고 확장이 간편하며, 원거리에 있는 다른LAN과 접속하기도 쉬워 적은 비용으로 원거리 컴퓨터들과 통신을 할 수 있다는 점이다.LAN의 발전으로 과거의 대형 컴퓨터와 광역통신망으로 이루어지던 중앙집중식 처리 형태에서 소형 컴퓨터에 의한 분산 처리 형태로 발전할 수 있었으며, 분산 처리 방법의 대명사인 클라이언트·서버 방식도탄생할 수 있었고, 각종 멀티미디어 정보를 손쉽게 활용할 수 있게 되었다고 할 수 있다. 아울러 인터넷이발전할 수 있었던 것도 LAN의 발전이 기여한 바가 매우 크다고 할 수 있다.▣운영체제의 기능운영체제의 기능(1)운영체제의 기능은 크게 자원 관리와 사용자 인터페이스로 구분될 수 있으며, 본 절에서는 자원관리 기능에 대해 설명하도록 한다.1. 프로세스 관리(Process Management)□프로세스(process)-일반적으로 수행중인(executing) 프로그램을 의미한다."수행중"이란 프로그램이 컴퓨터 시스템에 입력되어 운영체제에 등록이 되었으며, 운영체제가그 프로그램의 실행 과정을 감독하고 있음을 의미한다.-프로세스란, 사용자의 명령 또는 작업 요청이 컴퓨터 시스템에 입력되어 운영체제의 관리하에 들어갔으며 아직 그 수행이 종료되지 않은 상태를 의미한다□프로세스 관리-운영체제는 시스템 내의 각 프로세스들이 어떤 상태에 있는지, 특정 상태에서 어떤 요구를 하였고,지금까지의 총 실행시간이 얼마인지 등에 대한 정보를 기억하고 있 보거나 변경하기를 원하는 경우 보조기억장치에서 파일을 다시 찾아 이에 접근하도록 지원해야 한다.-대부분의 운영체제들은 사용자들에게 화일 관리의 편리성을 제공하기 위해서 디렉토리 계층구조의개념을 사용관련 용어디렉토리 계층구조(hierarchical directory structure)루트 디렉토리(root directory)에서부터 계속서브디렉토리(subdirectory)를 생성하면서사용자들이 자신의 화일을 관리하기 쉽도록지원하는 개념5. 보조 기억 장치 관리(Secondary Storage Management)-여러 프로세스들에 의해 디스크 파일등에 대한 접근 요구가 발생하는 경우, 운영체제의 보조 기억장치 관리 모듈은 어느 프로세스의 요청을 먼저 처리해야 하는지, 어떤 순서로 처리해야 하는지에대한 정책을 가지고 있어야 한다.-디스크 시스템 등의 성능 향상을 위하여 효과적인 스케줄링 기법을 지원해야 한다.(하드 디스크 : 운영체제에서 관리하여야 할 가장 대표적인 보조 기억 장치)6. 입출력 및 관리(I/O Management)-프로세스가 입/출력 서비스를 요구하는 경우, 이 요구는 운영체제에 전달되어 운영체제가 대신처리한다.-운영체제는 프로세스의 입/출력 요구를 입출력 처리장치(I/O processor 또는 I/O Interface)에 전달하고 실행 준비 상태에 있는 다른 프로세스에게 프로세서를 할당하여 이를 실행시킨다.-사용자가 키보드에서 한 문자를 누르는 경우에도 이러한 과정을 거친 입출력 관리가 발생한다[그림 설명]1. 실행중인 프로세스가 입/출력을 요구.2. 입/출력을 요구한 프로세스의 실행은 정지되고 요구한 입/출력이 완료될 때까지 대기.3. 운영체제는 프로세스의 입/출력 요구를입출력 처리장치에 전달.4. 입/출력 처리 장치는 해당 입/출력이 완료되면 이를 운영체제에게 알리게 되는데 이를 인터럽트(interrupt)라 함.5. 인터럽트가 발생하면 운영체제는 실행 중이던 프로세스를 잠시 중단시키고, 입/출력 완료 사실을대기 상태에 있는 프로세스에게 알닉스