1. 정보사회와 정보혁명
(1) 1980년대(정보의 시대), 1990년대(지식의 시대), 2000년대(지혜의 시대)
(2) 21세기 정보화 사회에서는 가상(virtual)과 사이버(cyber)라는 말이 보편화 될 것이다.
(3) 허만 칸은 정보혁명 대신에 컴퓨터혁명이라는 말을 사용했는데, "컴퓨터혁명은 역사적으
로 가장 널리 알려진 혁명이다. 그럼에도 불구하고 우리는 이 효과를 대수롭지 않게 생각한
다는 사실은 참으로 놀라운 일이다"라고 말하였다.
(4) 컴퓨터의 가장 정확한 정의는 "입력된 데이터를 프로그램에 의해 처리, 저장하고 이를
검색, 출력해 낼 수 있는 전자장치"라고 할 수 있다.
2. 정보통신기술과 뉴미디어
(1) 컴퓨터의 주기억장치로 사용되는 반도체 메모리를 나타내는 용어는 DRAM 이다.
3. 컴퓨터시스템의 구성과 기능
(1) 컴퓨터시스템은 데이터를 입력하는 입력장치, 입력된 데이터를 처리하는 처리장치, 처리
된 결과를 출력하는 출력장치, 주기억장치를 보조해 주는 보조기억장치로 구성된다.
(2) 하드웨어와 소프트웨어
①컴퓨터시스템의 처리장치는 중앙처리장치(CPU)와 주기억장치로 구성된다.
②CPU는 제어장치와 산술논리연산장치로 구성되고, 주기억장치는 문자, 숫자, 특수문자를
전자적으로 저장할 수 있는 요소들로 구성된다.
③이러한 하드웨어장치들을 효과적으로 사용하기 위해서는 소프트웨어가 요구된다.
④소프트웨어는 응용소프트웨어와 시스템소프트웨어로 나누어진다.
⑤응용소프트웨어는 컴퓨터 제작회사가 아닌 이용자에 의해 특정한 목적을 위해 프로그래밍
언어를 이용하여 작성된 프로그램들의 집합(급여관리 프로그램, 재고관리 프로그램 등)
⑥시스템소프트웨어는 응용소프트웨어와 하드웨어 사이에서 사용자가 하드웨어를 보다 효율
적으로 이용할 수 있도록 도와주는 프로그램들의 집합(운영체제, 컴파일러, 링커, 로더 등)
(3) 컴퓨터시스템의 기본기능
①데이터의 덧셈, 뺄셈, 나눗셈과 같은 산술연산
②어떤 수가 다른 수보다 큰 것인가를 결정하는 것과 같은 논리연산
③처리를 위해서 데이터를 받아들이거나 데이터를 인쇄하는 입출력 동작
4. 컴퓨터 프로그램과 데이터
(1) 컴퓨터를 이용하는 정보환경에서 빈번하게 사용되는 중요한 용어로는 데이터(data),
정보(information), 프로그램(program)을 들 수 있다.
(2) 데이터란, 사실 및 개념 또는 명령을 사람이나 자동기계가 통신, 해석 그리고 처리하기
에 적절한 형태로 표시한 것이다.
(3) 정보란, 어떤 매개체에 의해 집대성되고 의미 있는 것으로 처리되어 가공된 데이터이다.
5. 컴퓨터요원
(1) 시스템실
①시스템 분석자는 건축설계사에 해당하는 직종으로 이용자의 문제를 이용자와 함께 조사,
분석하여 전산처리가 가능하도록 업무를 설계하고 분석하며, 프로그램의 개발과 프로그램의
테스트까지를 책임지는 사람이다.
②프로그래머는 건축의 목수와 같은 직종으로 시스템 분석자가 작성해준 설계대로 프로그램
을 작성해 주는 일을 한다.
③조작수(operator)는 주로 콘솔에 앉아서 중앙처리장치를 조작하는 일을 하거나 자기테이프
를 테이프장치에 걸어주는 일을 한다.
(2) 시스템 프로그래밍 부서에는 데이터 통신 담당, 데이터베이스 담당, 시스템 프로그래머
등이 있다.
(3) 오늘날에는 네트워크 관리자, 웹마스터, 웹디자이너, 정보검색사 등의 새로운 컴퓨터 요
원들도 각광을 받고 있다.
6. 컴퓨터의 종류
(1) 개인용 컴퓨터
①1974년 미국 MITS사가 가정용 개인컴퓨터 '키트' 발표
②1980년대 초 MS-DOS 운영체제인 IMB-PC의 급속한 발전
③오늘날은 Windows 운영체체로 펜티엄급인 노트북 컴퓨터, 개인용 컴퓨터, 모빌 컴퓨터,
펜 컴퓨터 등이 확산되고 있다.
(2) 미니 컴퓨터
①초창기의 미니 컴퓨터는 주로 공학과 과학 관련 기관들에 의해 설치되었다.
②1980년대에는 상업용으로도 쓰이다가 오늘날 클라이언트-서버시스템이 보편화되면서 미
니 컴퓨터라는 말이 거의 사용되지 않고 있다.
(3) 서버시스템
①오늘날 보편화되고 있는 서버시스템은, 강력한 성능과 기능을 갖는 마이크로프로세서들인
펜티엄 프로세서, 알파 프로세서, 파워피시 프로세서 등의 CPU를 1개 이상 탑재하여 적은
비용으로도 범용 컴퓨터나 슈퍼컴퓨터의 성능을 능가하도록 만든 시스템이라 할 수 있다.
②서버시스템은 사용하는 목적이나 기능에 따라 웹 서버, 네트워크 서버, 메일 서버, 데이터
베이스 서버 등의 다양한 종류의 이름을 갖고 있다.
(4) 범용컴퓨터
①'메인프레임'이라고도 하는 범용 컴퓨터는 1950년대 초 상업적 분야에서 개발되었으나 오
늘날 소형 컴퓨터의 향상으로 그 입지는 좁아지고 있다.
(5) 슈퍼컴퓨터
①대용량의 과학계산, 우주개발, 국방과 무기 분야, 일기예보 등을 효과적으로 처리할 수 있
는 슈퍼컴퓨터는 몇 몇의 큰 대학이나 연구소 국가기관 등에 국한되고 있다.
(6) 전용컴퓨터 - 특수한 작업을 수행하기 위해 개발된 컴퓨터
제2장 컴퓨터와 통신산업의 발전
1. 초창기 계산도구
(1) 계산도구로의 기원은 기원전 2500년경 중국에서 사용한 주판이라고 볼 수 잇다.
(2) 1617년 네이피어는 곱셈용 계산도구인 네이피어 봉을 만들었다.
(3) 1642년 파스칼은 가산기를 만들었다(최초의 기계식 계산장치)
(4) 1674년 라이프니츠는 루트함수까지 수행할 수 있는 승제산기 제작
(5) 1823년 베비지는 다항방정식의 함수표를 만드는 차분기관과 1834년 수학계산을 자동으
로 하는 해석기계를 발명하였다.
(6) 1880년 홀러리스는 천공카드시스템을 사용하여 인구통계분석기간을 크게 단축하였다.
2. 전자식 계산기의 등장
(1) 최초의 전자식 디지털 컴퓨터 : 아타나소프-베리 컴퓨터(ABC)
(2) 최초의 대형 전자식 디지털 컴퓨터 : 모클리와 에거트의 에니악(ENIAC) : 18,000개의
진공관이 들어 있어 두 숫자를 약 1/1000초에 곱할 수 있었다.
3. 프로그램 내장방식
(1) 내장프로그램 개념에 대한 최초의 기록이 된 컴퓨터 : 폰 노이만의 에드박(EDVAC)
(2) 프로그램 내장 방식에 의하여 작동되는 최초의 컴퓨터 : 모리스 윌키스의 에드삭
(EDSAC)
4. 컴퓨터 산업의 발전단계
(1) 컴퓨터 산업의 제1세대(1950-57) : 진공관 시대
①유니백 원(UNIVAC I) : 입력장치로 천공카드시스템을 사용했으며 최초의 상업적 목적의
시스템으로 미국의 조사통계국에 설치되었다.
②IBM 사는 701데이터 처리시스템과 사업용으로 적합한 중형의 650 컴퓨터 공급
(2) 컴퓨터 산업의 제2세대(1958-63) : 트렌지스터 시대
①트렌지스터를 발명한 세 과학자 : 바딘, 브래튼, 쇼클리
②트렌지스터를 사용한 첫 번째 컴퓨터 : 유니백 투(UNIVAC II)
③IBM사의 컴퓨터시스템 : 7090, 7070, 1401, 7094, 1604 등
④컴퓨터의 주기억장치로는 페라이트 자기코어 기억소자를, 입출력을 효과적으로 처리하기
위해서는 입출력 프로세서 또는 채널을 사용하였으며, 인덱스 레지스터와 부동소수점 연산
을 위한 하드웨어도 사용하였다.
⑤프로그램을 용이하게 하는 고급언어인 알골(ALGOL), 포트란(FORTRAN), 코볼(COBOL)
등을 사용하였고, 실시간 시스템과 운영체제를 사용하였다.
(3) 컴퓨터 산업의 제3세대(1963-71) : 집적회로 시대
①집적회로 발명 : 킬바이와 노이스
②컴퓨터시스템의 제어회로를 구성하는 요소들을 작은 칩 속에 내장한 360 컴퓨터 사용
③제3세대 컴퓨터 : CDC 6000계열, 버로스사의 5000, 6000계열, DEC사의 PDP-8 등
④코어 메모리 대신 반도체 메모리 사용, 프로세서 설계에 마이크로프로그래밍 기법 사용,
캐시메모리 사용, 다중프로그래밍, 다중처리 등 병렬처리에 대한 기법과 운영체제, 가상메모
리에 대한 개념 확립 등
⑤CPU를 하나의 칩에 저장한 마이크로프로세서, 메모리, 인터페이스 등 컴퓨터 기능을 구
현한 마이크로컴퓨터 출현
(4) 컴퓨터 산업의 제4세대(1972-?) : 고밀도(LSI) 및 초고밀도(VLSI) 집적회로 시대
①개인용 컴퓨터, 지능적 터미널, 데이터통신, 분산데이터 처리, 데이터베이스 등의 전문용어
가 보편화
②LAN과 WAN을 통한 컴퓨터통신 분야 발전
③그래픽 사용자 인터페이스(GUI) 강화
5. 컴퓨터와 통신의 결합
(1) 1970년대 컴퓨터시스템을 이용하여 데이터를 처리하는 데 두 가지 큰 변화가 일어났는
데, 하나는 자료처리방식이고, 다른 하나는 컴퓨터통신의 활용이다.
6. 마이크로프로세서의 발전
(1) 인텔사의 마이크로프로세서 발전
①최초의 4비트 4004 개발 ②8비트인 8008과 오늘날의 8비트 시초인 8080 개발
③16비트인 8086과 8088 개발 ④80286과 32비트인 80386과 80486 개발
⑤펜티엄 II와 팬티엄 III 제온 등 개발
7. 소프트웨어 산업의 발전
(1) 프로그램의 필요성
①1950년대 초반 자동프로그램에 대한 첫단계는 상징적 부호를 사용하여 수행될 작업을 표
시하는 것으로, 이것은 기계어에 비해 프로그래밍 과정을 어느 정도 발전시켰고, 컴퓨터에
의하여 수행될 각 단계를 하나의 명령으로 작성할 필요가 있었는데, 이와 같이 상징적 프로
그래밍을 작성하는 데 사용되는 언어를 어셈블리어라고 한다.
(2) 고급언어의 개발
①1957년 수학적 기호로 프로그램을 작성한 포트란(FORTRAN) 소개
②Flowmatic, FACT, Algol, Commercial Translator 등
③1960년 미 국방성에서 기계와는 무관한 상업용 프로그래밍 언어 코볼(COBOL) 개발
④코볼이 프로그래밍 언어에 기여한 공헌은 영어와 비슷한 형태로 프로그래밍을 할 수 있다
는 것과 서로 다른 업체가 만든 컴퓨터에서 사용될 수 있다는 점(호환성)이다.
⑤1970년도에 효율적인 프로그래ald 언어교육과 소프트웨어의 대형화에 따른 문제점을 해소
하기 위해 파스칼(PASCAL) 개발
⑥1972년 벨 연구소에서 C언어 개발
⑦1980년도 C++ 개발, 1991년도 JAVA 개발
⑧시각적인 프로그래밍을 위한 비쥬얼 툴 : 비쥬얼 베이직, 비쥬얼C++, 비쥬얼 포트란, 델파
이, 파워빌더 등
(3) 운영체제 발전
①운영체제의 시초는 1964년에 개발된 IBM 시스템/360 운영체제
②1970년대 UNIX
③1980년대 MS-DOS
④1990년대 Windows98, OS/2, Mac OS 등
8. 컴퓨터 산업의 미래(5세대)
(1) 메모리의 대규모 집적회로화 : 광소자, 조셉슨소자, 갈륨비소소자
(2) 소프트웨어 : 지능화 언어, 자연어, 도형처리
(3) 컴퓨터의 예 : 신경망 컴퓨터
제3장 처리장치와 데이터 처리
1. 처리장치의 개요
(1) 중앙처리장치(CPU)와 주기억장치
(2) 중앙처리장치는 제어장치와 산술논리연산장치로 구성된다.
(3) 주기억장치는 초기에는 진공관, 트랜지스터가 사용되었으나 오늘날에는 ROM, RAM과
같은 반도체기억장치가 사용되고 있다.
2. 데이터의 저장과 표현
(1) 주기억장치 내부에 기억된 데이터의 기본단위는 비트(bit ; binary digit)로서, 두 가지
형태인 1(on) 또는 0(off)으로 저장된다.
(2) 실제 테이터를 표시하는 방법으로 직렬로 된 비트들을 쓰는데 보통 8개의 비트를 모아
정보를 표현하며, 이때 8비트를 1바이트(byte) 라고 한다.
(3) 수치 데이터 표현
①우리들이 일상적으로 사용하고 있는 수는 0-9까지인 10진법수이다.
②10진법은 기저(base)가 10인 수치체계이고 기저가 2, 8, 16이면 각각 2진법, 8진법, 16진법
이라고 한다.
③컴퓨터 내부의 정보표현은 2진법을 사용하는데, 2진법은 0과 1의 비트 조합이다.
④2진수를 8진수로 나타내려면 오른쪽에서 왼쪽으로 3자리씩마다 8진수로 표시,
즉 2진수(11010111)를 8진수로 나타내면 (327) *교과서 73쪽 표 3-1참조
⑤2진수를 16진수로 나타내려면 오른쪽에서 왼쪽으로 4자리씩마다 16진수로 표시,
즉 2진수(11010111)를 16진수로 나타내면 (D7) *교과서 73쪽 표 3-1참조
(4) 문자 데이터 표현
①ASCII는 8비트로 구성되었으나 7비트만을 사용하고 나머지 한 비트는 검증비트(parity
bit)로 사용되고 있다. 검증비트란 비트 표현의 오류를 검증하기 위해 사용되고 있다.
②최초의 128개 ANSI 코드들은 ASCII의 그것과 동일하고 나머지 128개들만이 Windows
애플리케이션들 사이에서 이용될 수 있도록 정의되어 있다.
③IBM, 마이크로소프트, 로터스, 디벨로프먼트, 선마이크로시스템 등과 같은 유명 컴퓨터업
체들이 컨소시엄을 결성하여 개발한 것이 16비트 인코딩 시스템인 UNICODE이다. 유니코드
는 16비트 코드로 2바이트를 취함에 따라 표현할 수 있는 문자열은 2의 16제곱승,즉 6만
5,536개에 이른다. 세계 모든 언어들을 표현할 수 있는 문자코드를 가지고 있다.
④EBCDIC는 8비트 코드로서 256개의 영문자, 숫자, 특수문자를 포함한다. 이 8비트를 1바
이트라 하고, 8비트중 왼쪽 4비트를 존(ZONE), 나머지 4비트를 디지트(digit)라 한다.
3. 주기억장치 주소와 데이터 저장
(1) 기억용량의 기억단위로는 주로 바이트를 사용하는데, 오늘날 보편적으로 사용되는 기억
용량의 단위는 KB(kilo bytes), MB(mega bytes), GB(giga bytes)이며, 앞으로 사용하게 될
단위는 TB(tera bytes)가 될 것이다.
①1 Byte = 8 bits(한 문자 표현)
②1 KB(킬로바이트) = 210바이트(1,024 Byte)
③1 MB(메가바이트) = 220바이트(1,024 KB)
④1 GB(기가바이트) = 230바이트(1,024 MB)
⑤1 TB(테라바이트) = 240바이트(1,024 GB)
(2) 호출시간에 사용되는 단위로는 msec(milli second), μsec(micro second), nsec(nano
second), psec(pico second) 등이 있다.
①1 msec(밀리초) = 1/103초
②1 μsec(마이크로초) = 1/106초
③1 nsec(나노초) = 1/109초
④1 psec(피코초) = 1/1012초
4. 컴퓨터명령어의 형태와 실행
(1) 우리가 고급언어로 작성한 프로그램은 실행을 위해 기계어로 번역된 후 주기억장치에
저장된다. 따라서 주기억장치에 있는 프로그램명령어는 컴퓨터시스템의 전자회로가 해석하
고 실행할 수 있는 기계어명령으로 저장되어 있는데, 이것을 실행프로그램이라 한다.
(2) 기계어명령어의 형식은 명령부와 오퍼랜드부로 나누어지고, 오퍼랜드부는 다시 레지스
터, 데이터 주소, 데이터의 길이 등으로 세분화된다.
(3) 전형적인 컴퓨터명령어의 실행 순서
①명령어를 주기억장치에서 가져온다(fetch)
②꺼내 온 명령어를 제어장치내의 명령어 레지스터에 넣는다.
③제어장치가 명령어 레지스터에 있는 명령어를 분석한다.
④주기억장치에 있는 데이터를 산술논리연산장치의 레지스터에 넣는다.
⑤산술논리연산장치는 해석된 명령어에 따라 계산을 수행한다.
⑥수행된 후의 결과는 산술논리연산장치내의 레지스터에 저장된다.
⑦제어장치는 레지스터에 있는 결과를 주기억장치로 옮긴다.
5. 기억장치의 발달과정과 반도체 기억장치
(1) 기억장치의 발달과정
①최초의 주기억장치로 사용된 진공관은 기억 역할은 하였으나 크고 약하며 열을 많이 발생
하며 신뢰성이 떨어지고 많은 전류를 필요로 하였다. 또한 수은지연선, CRT, 윌리엄관 등도
모두 기억정치에 사용되었다.
②조그마한 반지 모양으로 양극 중 한 쪽으로 쉽게 자화 또는 극화할 수 있는 물질로 극은
코어가 'ON' 또는 'OFF'임을 나타내는 자기코어기억장치가 사용되었다.
(2) 반도체기억장치
①RAM(Random Access Memory)은 읽고 기록하는 메모리로서 전원이 공급되는 한 내용이
그대로 유지되는 캐시메모리로 이용되는 SRAM과 전원이 공급되더라도 내용의 소멸을 방
지하기 위해 계속적으로 리프레싱이 요구되는 흔히 말하는 주기억장치로 이용되는 DRAM
으로 구분된다.
②ROM(Read Only Memory)은 기록된 데이터를 읽어서 사용할 수 있으나 그 내용을 다른
데이터로 변경할 수는 없다. 그 밖에 ROM과 같은 기능을 수행하는 PROM, 메모리 안에 있
는 내용을 자외선을 통해 지우며 롬라이터를 통해 프로그램을 입력하는 EPROM, 전기적으
로 쉽게 지울 수 있고 롬라이터를 통해 자료를 입력할 수 있는 EEPROM 등도 있다.
③반도체방식 저장장치는 한 가지 중요한 문제점을 안고 있는데, 현재의 전기가 꺼지거나
또는 방해를 받는 경우 데이터를 잃어버린다는 "파괴메모리"가 그것이다.
④이에 따라 "버블메모리"라는 데이터 무손실 기술이 등장했다.
⑤플래시메모리는 최종 사용자가 쉽게 내용을 변경할 수 있게 만든, 비파괴메모리 기술을
적용한 메모리의 한 형태이다.
⑥최근에 들어와 컴퓨터의 성능을 향상시키기 위해 캐시메모리의 사용이 증가되는데, 이 메
모리 칩은 RAM 칩보다 빠르나 값이 비싸다는 단점이 있다.
6. 데이터 처리
(1) 데이터의 논리적 개체인 필드(field), 레코드(record), 파일(file)의 관계 : 필드가 모여 레
코드가 되고, 레코드가 모여 파일을 이룬다.
(2) 데이터 입력 방법
①직접입력 : 음성, 키보드, 마우스, 터치스크린 등
②카드로 입력 : OMR, OCR, MICR 등
③전자매체나 광학매체에 수록한 후 입력 : 자기테이프, 자기디스크, CD-ROM 등
(3) 데이터 처리
(4) 결과 출력 장치 - 프린터, CRT터미널 등
제4장 컴퓨터의 입출력
1. 입츌력의 개요
(1) GIGO(Garbage In, Garbage Out) : 입력한 데이터가 정확하지 않으면 처리 결과도 정학
하지 않다는 뜻이다.
(2) 데이터를 처리하는 두 가지 방법
①일괄처리시스템 : 처리될 데이터를 포함하고 있는 문서들이 함께 수집되어 직접 컴퓨터에
입력되거나, 자기테이프나 플로피디스크와 같은 입력매체에 전환한 후 그룹으로 처리되는
것으로 학생들의 성적처리가 이에 해당된다.
②거래지향처리시스템(대화식 처리시스템) : 데이터가 발생되는 즉시 직접 컴퓨터에 입력하
는 것으로 은행 등의 고객관리처리가 해당된다.
2. 데이터 입력
(1) 컴퓨터시스템의 입력방법과 입력장치
<입력방법> <입력장치>
①원시데이터 직접입력 : OMR, OCR, MICR, 바코드 판독장치
②보조기억매체 사용 : 플로피디스크, 자기디스크, 자기테이프, CD-ROM 판독장치(대량의
입력 데이터를 신속하게 처리)
③터미널 입력 : 키보드, 마우스, 스캐너, 터치스크린, 펜마우스, 음성입력장치(컴퓨
터터미널에서 필요한 데이터를 직접 입력)
(2) 일괄처리용 입력장치
①기계가 읽을 수 있는 원시문서 : OMR(광학마크인식), OCR(광학문자인식), MICR(자기잉
크문자인식), 바코드 등
②보조기억장치를 통한 입력 : 자기테이프, 자기디스크, DAT 드라이브 등
(3) 거래지향처리용 입력장치
①비지능적 터미널(덤터미널)
②지능적 터미널 : 개인용 컴퓨터
(4) 기타 컴퓨터 입력장치
①판매점 터미널 ②음성인식장치 ③이미지리더(스캐너) ④디지타이저(어떤 현상을 숫자로
바꿀 수 있는 입력장치)
3. 입력 데이터 편집
(1) 영숫자 확인 테스트
(2) 타당성 보증 테스트
(3) 범위 테스트
(4) 일관성 테스트
(5) 체크디지트(내용을 바꾸어 쓰거나 앞뒤가 바뀌는 전위에러를 확인하는 방법)
4. 정보의 출력
(1) 일괄처리용 출력장치
①프린터 출력 - 문서로 활용
②보조기억 출력 : 자기테이프, 자기디스크(플로피, 하드, 광디스크 등), 마이크로필름 - 보
관이나 재활용
(2) 거래지향처리용 출력장치 - CRT 모니터 - 일시적인 영상 조회
(3) 기타 컴퓨터 출력장치
①플로터(도트매트릭스, 정전기, 잉크분사프린팅, 펜 등) - 이미지 출력
②포스트스크립트 레이저빔 프린터
③음성출력
5. 거래지향처리는 사용자 중심이 될 수 있도록 다음과 같은 요소들이 고려되어야 한다.
(1) 시스템은 사용하기에 용이해야만 한다.
(2) 응답시간은 짧아야 한다.
(3) 신호 및 조언들이 사용되어야 한다.
(4) 사용자의 입력항목은 간단하고 사용하기에 간편해야 한다.
(5) 모든 사용자의 입력들은 인식이 용이해야 한다.
6. 입출력의 미래
(1) 핸드핼드PC, 팜톱PC, 오토PC, 등 개인 휴대용 단말기(PDA)로 총칭되는 모빌 컴퓨터들
이 인공위성과 광통신망과 결합되어, 데이터의 입출력은 시공을 초월한 환경으로 발전할 것
이고, 인간의 언어를 이해할 수 있는 다양한 입출력 시스템이 출현할 것이다.
제5장 보조기억장치와 데이터 저장
1. 보조기억장치의 개요
(1) 순차적 저장 및 검색 : 자기테이프(릴테이프, 카트리지테이프)
(2) 임의적 혹은 순차적 저장과 검색 : 자기디스크(플로피디스크, 하드디스크)
(3) 광학적 기록 및 판독 : 광디스크(CD-ROM, CD-WORM, CD-I, CD-R, CD-RW, DVD)
(4) 기타 매체 : 자기드럼, 자기버블메모리, 전하결합기억장치
2. 순차접근 기억장치
(1) 자기테이프의 종류
①IBM사에 의하여 개발된 자기테이프 드라이브 : 이 드라이브는 여분의 테이프를 진공상태
의 관 속에 넣음으로써 자기테이프가 파열되지 않고 신속히 시동 또는 정지 될 수 있었다.
②DAT 드라이브 : 빠르고 신뢰성이 높으나 가격이 비싼 편으로 테이프당 최대 10GB 저장
③IBM의 3494 테이프 라이브러리 데이터 서버
(2) 자기테이프의 데이터 저장
①전통적인 릴테이프 드라이브의 데이터 저장 방법 : 자기테이프의 진행방향으로 9개의 채
널을 가지고 있는데 8개의 채널을 통해 문자에 해당되는 비트의 조합을 구성하고 나머지 하
나의 채널을 검증 채널로 하여 EBCDIC코드로 데이터가 저장된다.
②DAT 드라이브의 기록/판독방법 : 비스듬하게 된 실린더 위에 있는 두 개의 쓰기 헤드를
통해 데이터를 서로 반대 방향으로 비스듬하게 기록하고, 판독할 때는 두 개의 읽기 헤드를
통해 데이터를 읽는다. 실린더는 보통 분당 2,000회전을 하고 테이프는 초당 1/3인치를 이동
한다.
(3) 자기테이프에 저장된 레코드의 형태
①자기테이프의 블록간 간격 : 자기테이프에 순차적으로 수록된 레코드들은 구분하며 시동
과 정지를 가능하게 한다.
②물리적 레코드의 구성 : 한 개의 블록(물리적 레코드)에 저장되는 논리적 레코드 수는, 자
기테이프 파일이 읽혀질 때마다 한 블록의 모든 논리적 레코드들이 컴퓨터 주기억장치에 들
어가야 하므로 하나의 블록을 저장하기 위해 사용되는 주기억장치의 양에 의해 제한된다.
3. 직접접근 기억장치
(1) 최초의 자기디스크 : IBM사에 의해 개발된 RAMAC 디스크
(2) 플로피디스크
①5.25인치(360KB, 1.2MB)와 3.5인치(720KB, 1.44MB)
②디스크를 포맷(초기화)할 때 드라이브가 제일 먼저 하는 일은 트랙이라 부르는 자기적으
로 집중화된 일련의 원들을 만드는 것이다.
③디스크 위의 각 트랙은 더욱 작은 조각으로 절단되어 있는데, 이것을 섹터라 부른다.
④3.5인치, 즉 1.44MB 플로피디스크는 총 2,880개의 섹터들을 가지고 있다.
(80트랙/면*2면*18섹터/트랙 = 2,880섹터)
⑤섹터는 디스크가 일을 할 수 있는 가장 작은 단위이다.
⑥섹터 안의 각 비트와 바이트는 서로가 다른 값을 가질 수 있다.
(3) 하드디스크
①하드디스크는 크게 구분하여 디스크 팩을 드라이브로부터 분리할 수 있는 경우와 일체형
으로 분리할 수 없는 경우, 많은 개수의 하드디스크 드라이브를 하나로 결합된 디스크어레
이, 그리고 100MB 정도의 데이터를 저장할 수 있는 집드라이브와 1GB의 큰 용량의 데이터
를 저장한 후 쉽게 이동, 사용할 수 있는 재즈드라이브 등의 형태로 나눌 수 있다.
②하드디스크는 실제로 평판을 겹겹이 쌓아 올린 것으로 중심축으로부터 동일한 거리에 있
는 트랙들의 집합을 실린더라 부른다.
③1.632트랙/면*12면(헤드) = 19,584트랙
19,584트랙*54섹터/트랙 = 1.057,536섹터
1,057,536섹터*512바이트/섹터 = 541,458,432바이트(541MB)
④하드디스크장치는 회전축에 장치된 여러 장의 디스크, 즉 디스크 팩으로 구성되고 그 축
은 일반적으로 분당 7,200회전의 속도로 디스크 팩을 회전시킨다. 회전하고 있는 디스크 팩
표면에 데이터를 기록하거나 표면에 있는 데이터를 읽기 위하여 디스크 드라이브들은 액세
스암을 사용하는데, 어느 것이나 읽기/쓰기 헤드들을 포함하고 있다.
⑤자기디스크내에서 데이터를 구성하는 요소는 디스크 드라이브에 따라 다르나 디스크 팩과
이동헤드방식을 사용하는 경우 크게 두 가지, 즉 실린더와 섹터를 들 수 있다.
(4) 광디스크(레이저광)
①광학기억매체(CD-ROM 등)는 최대 680MB까지 데이터를 저장할 수 있고 제작될 초기에
데이터를 한번만 저장할 수 있으며 저장된 데이터를 반복적으로 읽어 사용할 수는 있으나
내용을 추가하거나 변경할 수 없다는 단점, 나선형 형태로 구성되어 검색시간이 동심원 형
태의 자기디스크보다는 느리다는 단점을 갖고 있다.
②동심원 형태의 많은 트랙을 갖는 플로피디스크나 하드디스크와 다르게 광디스크는 전체적
으로 하나의 트랙이 나선형으로 구성되어 있으며 트랙번호가 아니라 분, 초, 섹터번호에 의
해 접근된다.
4. 대량기억장치
(1) 대량기억장치는 4,720억 문자까지 저장할 수 있는 대용량이나 접근속도는 약간 느린 단
점을 갖고 있다.
(2) 버블메모리는 수백만 비트의 데이터를 저장할 수 있고 데이터를 매우 빠르게 액세스할
수 있고, 저장된 데이터는 메모리에 전원이 꺼졌을 때도 유지되기 때문에 그 사용이 점점
증가되고 있다.
제6장 소프트웨어
1. 개요
(1) 소프트웨어는 컴퓨터의 하드웨어 구성요소들을 부드럽게 작동하도록 설계된 프로그램인
시스템소프트웨어와 개인이나 조직의 일에 대한 컴퓨터 활용수단인 응용소프트웨어로 구분
된다.
2. 시스템소프트웨어
(1) 운영체제(Operating system)
①사용자가 컴퓨터와 대화할 수 있도록 인터페이스를 제공한다.
②컴퓨터에서 하드웨어 장치를 관리한다.
③디스크에 있는 파일시스템을 관리, 보존한다.
④다른 프로그램들을 지원한다.
⑤운영체제는 크게 개인용 컴퓨터 중심의 운영체제, 서버 중심의 운영체제, 그리고 중대형
시스템 의존적인 운영체제로 구분할 수 있다.
(2) 언어번역기
①컴파일러(Compiler)는 원시프로그램 명령들을 기계어 명령들로 변환시켜 목적프로그램을
생성시키는 프로그램이다. 포트란, 코볼, 파스칼, C, C++ 등 대부분의 고급언어가 컴파일러
를 필요로 한다.
②인터프리터는 원시프로그램의 한 문장을 읽고 문장 단위로 해석하여 바로 실행하며 목적
프로그램이 생성되지 않는다. 인터프리터 방식을 채택하고 있는 언어로는 베이직, Prolog 등
이 있다.
(3) 유틸리티프로그램이란 프로그램이나 데이터를 한 매체에서 다른 매체로 옮기거나 데이
터의 내용이나 배치순서를 바꾸거나, 또는 프로그램 개발시 에러를 쉽게 찾아낼 수 있게 하
는 등의 여러 종류 프로그램을 집합적으로 일컫는 용어이며, 몇 가지 예는 다음과 같다.
①매체변환 유틸리티
②디버깅 유틸리티 : 프로그램 개발 시 발생할 수 있는 에러를 교정하는 유틸리티를 통틀어
디버거(debugger)라 한다.
③텍스트 에디터 : 텍스트를 새로 만들거나 기존 텍스트를 수정하는 데 이용되는 프로그램.
3. 응용소프트웨어
(1) 사용자프로그램이란 컴퓨터의 개별 사용자나 또는 조직의 전산실에서 그들의 필요에 의
한 응용 목적을 달성하기 위해 제작되는 것(고객관리, 생산, 재고, 인사, 경영관리, 대학의
학사관리, 소프트웨어 전문회사, 각 기관의 전산실에서 개발되는 각종 소프트웨어가 사용자
프로그램의 범주에 속한다.
(2) 응용패키지프로그램이란 표준화되고 특성화된 프로젝트에 대해서 사용자들이 쉽게 활용
하도록 소프트웨어 개발회사에서 제작된 프로그램들이다.
①?글 ②엑셀 ③파워포인트
(3) 멀티미디어 도구
①멀티미디어 툴북 ②매크로미디어 디렉터5 ③오소웨어
4. 기타 소프트웨어
(1) 데이터베이스 관리시스템
①한글dBASE ②비쥬얼 폭스프로 ③MS엑세스 ④오라클 ⑤인포믹스 ⑥DB2
⑦사이베이스 ⑧잉그레스
(2) 통신소프트웨어
①새롬 데이터맨 프로 ②익스플로러 ③넷스케이프
제7장 프로그래밍
1. 프로그래밍 언어의 구분
(1) 저급언어(low level language)
①제1세대 : 기계어 : 컴퓨터의 전기적 회로에 의해 직접적으로 해석되어 실행되는 언어로
서, 컴퓨터를 효율적으로 활용하는 면에서는 매우 유리하지만 언어 자체가 복잡하고 어렵기
때문에 프로그래밍하는 데 시간이 많이 걸리고 에러가 많다.
②제2세대 : 어셈블리어 : 어셈블리어 프로그램은 어셈블러라는 번역프로그램에 의해 컴퓨
터가 실행 가능한 기계어 명령으로 바뀌어 실행하게 된다. 주요 이점은 프로그램의 수행시
간이 빠르고 주기억장치를 매유 효율적으로 이용할 수 있다는 점이다. 단점으로는 언어의
호환성이 없다는 것과 고급언어보다 쓰고, 읽고, 관리하는 면에서 더 어렵다.
(2) 제3세대 : 고급언어(high level language)
①절차지향 언어 : 프로그래머가 명령을 순서에 맞게 코드화하면, 순차적으로 명령이 실행되
어 문제를 해결하는 것이다. 포트란, 코볼, 파스칼, 베이직, C 등의 언어가 여기에 속한다.
②객체지향 언어 : 객체, 클래스, 상속이라는 개념을 기본으로 한다는 것이 절차지향 언어와
차이점이다. '객체'는 데이터와 데이터에 관련된 연산으로 구성되며, '클래스'란 객체들의
공통적인 성질을 정의한 것이고, '상속'이란 객체의 정보를 세분화 또는 일반화의 원칙에 따
라 조직화하는 방법이다. Smalltalk와 C++ 등의 언어가 여기에 속한다.
(3) 제4세대 : 비절차어
①비절차어는 프로그래밍 기술을 거의 갖지 못한 경영자와 실무자들이 기존의 데이터베이스
에서 데이터를 액세스할 수 있도록 하는 데 사용된다.
②비절차어는 사용자에게 질의어를 사용해서 데이터베이스에서 정보를 검색하고, 데이터베
이스에서 보고서와 그래픽을 만들고, 데이터베이스에서 데이터를 처리하는 원시코드를 실제
로 만드는 기능을 제공해 준다.
③이런 유형의 언어로는 SQL과 QBE 등이 있다.
(4) 제5세대 : 함수언어(LISP), 논리언어(Prolog), 자연어
(5) 비쥬얼 언어(비쥬얼 베이직, 델파이, 파워빌더, 비쥬얼C++)
2. 고급언어의 종류별 특성
(1) 베이직(BASIC : Beginner's All-purpose Symbolic Instruction Code)
①베이직은 초보자를 위한 대화형 언어이다.
②베이직의 장점은 쉽게 이용할 수 있다는 것이다.
(2) 비쥬얼 베이직(Visual BASIC)
① 비쥬얼 베이직은 말 그대로 시각적인 디자인으로 마우스만으로도 모든 화면을 구성할 수
있다. 또한 프로젝트 안에서 폼, 모듈, 클래스모듈, 일반모듈을 지원하므로 하나의 객체를 구
성함에 있어서 독립적인 구조를 가질 수 있다.
②비쥬얼 베이직은 구조적 프로그래밍 언어이다.
(3) C 언어
①C 언어는 미국 벨연구소의 리치가 설계하여 1972년에 구현시킨 언어이다.
②C 언어는 단순히 기능적인 면보다 신뢰성, 규칙성, 간소성 등의 사용상 편리함을 내포하
고 있다.
③C 언어는 저급언어와 유사한 기능뿐만 아니라 융통성과 이식성이 높으며, 풍부한 연산자
와 데이터형 및 제어구조를 갖고 있어 범용 고급 프로그래밍 언어로서 응용소프트웨어 개발
속도를 급속화 시키는 계기가 되고 있다.
(4) C++
①C++에서 ++은 변수의 값을 1 중가시키는 연산자이다. C++를 탄생시킨 스트로스트럽은
항해를 모델링하는 시뮬레이션을 프로그래밍하는 데 도움이 되도록 C++을 개발했다.
(5)비쥬얼 C++
①비쥬얼 C++ 컴파일러는 Windows95 이상과 Windows NT 환경에서만 실행된다.
②비쥬얼 C++ 컴파일러의 장점은 복잡한 윈도우 프로그램을 쉽게 만들 수 있도록 기본적인
프로그래밍은 자동적으로 컴퓨터가 알아서 할 수 있도록 되어 있고 프로스래머가 직접 화면
에서 프로그램의 모양을 디자인하기 쉽도록 되어 있어 컴파일러의 이름이 의미하듯이 시각
적인 프로그래밍이 가능하다는 것이다.
(6) 포트란(FORTRAN : FORmula TRANslation)
①고급언어 중 가장 먼저 개발된 언어로 본래 과학자, 공학자 및 수학을 하는 사람들이 사
용하기에 편리하도록 설계되었다.
②포트란의 장점은 복잡한 수학계산을 연산자를 사용하여 쉽게 나타낼 수 있다는 것이다.
③단점은 어셈블리어처럼 데이터 처리의 다양한 융통성을 가지고 있지 못하다는 점이다.
(7) 코볼(COBOL : COmmon Business Oriented Language)
①코볼은 사무처리를 위한 프로그래밍 언어로 일상에서 사용하는 영어와 같은 표현으로 기
술하도록 설계되어 있다.
(8) 파스칼(PASCAL)
①파스칼은 데이터를 구성하는 데 있어 데이터 길이의 제약이 없고 다양한 데이터 형식과
구조를 사용할 수 있으며, 조건이나 반복과 같은 많은 제어구조를 가지고 있기 때문에 구조
화 프로그램의 개념과 원리를 쉽게 적용할 수 있다. 특히 파스칼은 전산학의 교육용 언어로
서 유용하게 활용되고 있다.
(9) HTML(Hyper Text Markup Language)
①HTML은 1990년이래 전 세계적인 인터넷 정보 서비스를 위한 월드 와이드 웹(www)에
의해 사용되었다. 즉 하이퍼텍스트를 이용한 그래픽 문서정보로 이용되며 웹페이지의 내용
을 정의하는 데 사용되는 언어이다.
(10) 자바(Java)
①자바란 원래 선마이크로 시스템사에서 개발한 새로운 객체지향 프로그래밍 언어이다.
②자바는 메모리관리를 언어 차원에서 처리함으로써 보다 안정적인 프로그램을 작성할 수
있고, 선행처리 및 링크과정을 제거하여 개발속도와 편의성을 향상시켰다.
③자바는 네트워크 분산환경에서 이식성이 높고 인터프리터 방식으로 동작한다.
3. 프로그램의 설계
(1) 프로그램 개요
①프로그램이란 원하는 결과를 얻을 수 있도록 컴퓨터에게 일련의 일을 시키게 하는 명령어
들의 집합체라고 정의할 수 있다.
②프로그램을 실행시키기 위해서는 원시프로그램 명령들을 기계어명령들로 만들어 컴퓨터의
주기억장치에 로드 시켜야 한다.
(2) 프로그램 설계기법
①기본적인 도구인 흐름도를 사용하여 프로그래머들은 처리할 각 과정을 나타내어야 한다.
(3) 프로그램의 구조
①구조화 프로그래밍(순차, 조건, 반복)
a. 순차제어구조는 하나의 행위가 끝나면 다음 행위가 바로 시작되는 동작
b. 조건제어구조는 조건문에 사용된다.
c. 반복제어구조는 프로그램의 순환처리에 사용되고 있다.
②객체지향 프로그래밍의 주요한 목표는 프로그래머 생산성을 향상시키고 소프트웨어 재사
용 가능성을 높여서 소프트웨어 개발과 관리비용을 줄이는 데 있다.
a. 객체(object)는 하나의 독립된 데이터와 그 데이터에 대한 행동양식을 가지고 있다.
b. 클래스는 어떤 하나의 객체를 정의하고 한 걸음 더 나아가 그 객체에 대한 모든 가능한
행동양식과 해야 될 일, 해서는 안 될 일 등의 규칙을 정해 놓은 추상적인 형태이다.
③비쥬얼 프로그래밍은 시각적인 표현과 재사용 가능성, 상대적으로 코드화하기 쉬운 프로
그램을 만드는 개념으로서 윈도우 타입 메뉴, 버튼, 그래픽을 이용하는 객체지향 개념이다.
4. 프로그래밍 예(교과서 206-217쪽 참조)
제8장 시스템분석 및 설계
1. 기업조직내에서 컴퓨터시스템이 널리 이용하게 된 가장 큰 이유
(1) 비용절감
(2) 신속하고 정확한 정보의 획득
(3) 서비스의 개선 등이 컴퓨터시스템을 통해서 할 수 있기 때문이다.
2. 전산화의 배경 및 소프트웨어 수명주기
(1) 새로운 시스템이 구현되는 배경
①수작업 업무를 신규로 전산화하고자 할 때
②일괄처리 업무를 거래지향처리나 데이터베이스 형태로 전환하고자 할 때
③독립적인 파일을 사용하여 처리하던 작업을 데이터베이스를 사용하는 시스템으로 전환하
고자 할 때
④기존의 단위처리시스템을 하나의 커다란 통합 데이터베이스시스템으로 전환하고자 할 때
(2) 시스템프로젝트를 만드는 과정 5단계(소프트웨어 수명주기)
①1단계 : 예비조사단계
②2단계 : 시스템 조사 및 분석단계
③3단계 : 시스템 설계단계
④4단계 : 시스템 개발 및 평가단계
⑤5단계 : 시스템 구현 및 운용단계
3. 예비조사단계 - 개인면담
4. 시스템의 조사, 분석
(1) 시스템 조사방법 네가지
①면담법 ②질문법 ③문서수집법 ④관찰법
5. 시스템 설계
(1) 코드 설계
①코드란 어떤 명칭 또는 개념에 대응되어 대신 사용되는 체계적인 부호, 약호, 암호이다.
②컴퓨터를 이용하여 자료를 처리하는 관점에서 분류, 조합 및 집계를 용이하게 하며, 특정
자료의 추출을 쉽게 하기 위해서, 또한 어떤 단위별 수치를 알거나 파일을 체계화하기 위해
서 코드는 필요한 것이다.
③코드의 기능 : 정보의 표현방법을 표준화, 단순화하여 분류, 조합 및 집계를 용이하게 해
준다. 또한 하나 하나의 정보 구분이 가능하여지므로 데이터 처리를 코드에 의해서 구분해
줄 수 있다.
④코드 설계시 주의점
-컴퓨터 처리에 적합해야 한다.
-취급이 쉬워야 한다.
-공통성, 체계성, 확장성이 있어야 한다.
⑤코드의 종류
-순서코드 : 코드화 대상 항목을 어떤 일정한 배열로 하는 가장 간단한 방법
-구분코드 : 코드화 대상을 미리 공통성 있는 것끼리 묶어 임의의 크기로 구분하는 방법
-그룹분류코드 : 코드화 대상을 소정의 기준에 따라 대, 중, 소분류로 구분하는 방법
-표의코드 : 대상이 되는 물체의 크기나 중량을 코드에 사용하는 방법이다.
-기호코드 : 코드화 대상의 명칭과 약호를 코드의 일부로 조립하여 대상품목을 연상하기 쉽
게 하는 코드이다.
(2) 출력 설계
①출력종류 결정 ②출력매체종류 결정
③인쇄보고서 서식의 설계 ④터미널 전용 출력형태설계
(3) 입력 설계
(4) 파일과 데이터베이스 설계시 데이터 목록
①시스템에서 요구되는 각종 데이터의 항목일람표
②각 항목의 길이와 데이터의 속성에 관한 사항
③데이터가 시스템의 어디에서 필요한가 라는 점
④데이터의 액세스 형태
⑤데이터의 예상 이용량 및 저장해야 할 데이터의 양
(5) 시스템 처리과정의 설계시 몇가지 방법
①데이터 흐름도 ②시스템 흐름도
(6) 시스템 통제실시
①원장통제 ②입력통제 ③처리과정통제 ④출력통제
6. 시스템 개발
(1) 프로그래밍 설명서
①시스템 개요 ②시스템 흐름도 ③데이터 흐름도
④입출력 및 제작되고 처리되어야 할 파일의 형태
⑤프로그램에서 사용될 데이터베이스의 형태 및 내용
⑥자세한 프로그램의 처리과정 등이 포함되어야 한다.
(2) 프로그램 개발
①프로그램의 작성
②프로그램의 테스트 절차 : 컴파일하여 나타난 문법적 에러 수정 -> 테스트데이터 작성
-> 프로그램 테스트 -> 에러 발견시 프로그램 수정 -> 시스템테스트 시행
(3) 프로그램의 문서화
7. 시스템의 구현 및 운용
(1) 새 시스템으로의 교체작업
①직접교체 ②병행교체
(2) 새 시스템 운용
제9장 파일과 데이터베이스
1. 개요
(1) 데이터가 구성되는 방법으로는 순차적 구성, 상대적 혹은 직접적 구성과 인덱스된 구성
이 있고, 구성된 데이터에 액세스하는 방법으로는 순차 액세스와 임의 액세스가 있다.
(2) 데이터베이스는 실세계에 존재하는 많은 데이터들 가운데 어떤 조직이나 단체를 유지하
고 관리하는 데 필수적인 관련 데이터들의 집합이다. 즉, 데이터베이스란 어떤 일에 관련되
거나 필요한 데이터들의 집합 또는 어떤 집단의 유지, 관리에 필요한 데이터들의 집합을 의
미한다.
2. 파일구조
(1) 순차적 파일구조
(2) 상대적 혹은 직접적 파일구조
①레코드가 저장될 장소를 레코드에 있는 키의 값을 기준으로 결정한다.
②상대적 파일구성은 데이터를 가장 빠르게 액세스할 수 있긴 하지만 디스크 기억공간을 낭
비할 가능성이 있다.
(3) 인덱스된 파일구조
①레코드는 키에 따라 올림차순이나 내림차순으로 인덱스된 파일에 저장된다.
(4) 파일시스템과 데이터베이스시스템의 차이점은 크게 자료보관방법과 접근방식의 기술에
의해 비교된다.
3. 데이터베이스 관리시스템의 기능
(1) 빠른 데이터의 검색 지원
(2) 데이터의 독립성을 유지
(3) 데이터의 공유와 다수 사용자의 동시실행제어 지원
(4) 데이터의 빠르고 안전한 저장과 파손 회복능력
(5) 데이터베이스 액세스를 위한 표준적인 질의언어, 질의처리기능, 응용프로그램의 개발환
경 등을 제공
(6) 다른 사용자로부터 데이터의 보안 기능을 담당
4. 데이터베이스 언어와 인터페이스
(1) 데이터베이스 정의어(DDL) : 데이터베이스 생성언어는 데이터베이스의 스키마를 생성,
변경, 삭제하는 목적으로 사용되는 언어이다.
(2) 데이터베이스 조작어(DML) : 대화식 질의어와 데이터 부속어로 구분된다.
①대화식 질의어에는 SQL과 같은 4세대 언어가 있다.
②데이터 부속어는 코볼과 C언어와 같은 주언어로 작성된 응용프로그램에서 사용되는 명령
어 집합으로 데이터베이스 조작어의 전 처리과정을 거쳐 주프로그램 언어로 번역된 다음,
주프로그램 언어의 컴파일을 통해 실행된다.
(3) 데이터베이스 관리시스템의 인터페이스
①메뉴 중심의 인터페이스 ②그래픽 인터페이스 ③자연어 인터페이스
④매개 변수 사용자의 인터페이스
5. 데이터베이스시스템의 3계층 스키마 구조
(1) 스키마란 데이터베이스 구조를 전반적으로 기술하는 것으로 사용자 관점에 따라 여러
개의 부분집합으로 나눌 수 있다. 이와 같이 쪼개진 스키마의 부분집합을 서브스키마라 한
다.
(2) 스키마에는 물리적 수준의 내부 스키마, 중간 수준의 논리적인 개념 스키마, 외부 수준
의 외부 스키마 또는 사용자 뷰가 존재한다.
①외부 스키마는 최종사용자가 부분적으로 필요로 하는 요구사항에 해당되므로 이러한 일을
처리하는 응용프로그램에 위치하는 것이 보통이다.
②개념 스키마는 여러 개의 외부 스키마를 통합한 논리적인 데이터베이스의 전체 구조로서
데이터베이스파일에 저장되어 있는 데이터 형태를 그림으로 나타낸 도표이다.
③내부 스키마는 개념 스키마를 데이터베이스 관리시스템에서 제공하는 언어로의 수행으로
물리적인 기억장치내에 데이터가 저장되어 있는 데이터의 물리적 설계도에 해당된다.
6. 데이터베이스시스템의 구성요소
(1) 실질적인 저장데이터의 데이터베이스(DB), 데이터베이스의 생성, 유지, 관리하는 데이터
베이스 관리시스템(DBMS), 그리고 데이터베이스를 이용하는 응용프로그램이나 질의어로
구성된다.
7. 데이터모델
(1) 계층형 데이터모델
①데이터와 데이터 간의 관계가 마치 족보처럼 계층적 구조로 구성되며, 각각의 레코드는
링크로서 연결된다.(트리(tree)구조)
②계층정의 트리 최상위에 잇는 레코드를 루트레코드라 한다.
③레코드 형태의 집합과 링크 집합이 존재한다.
④두 레코드 형태 사이에는 부모와 자식관계의 최대 하나의 링크를 가지면 반드시 이름을
가질 필요는 없다.
⑤모든 레코드 형태는 자기 자신으로의 링크를 갖지 않는다.
⑥링크는 계층정의 트리라는 순서 리스트를 이룬다.
⑦모든 링크는 한 방향으로 완전한 함수관계를 이룬다.
⑧부모 레코드 형태를 갖지 않는 루트레코드는 다른 레코드 형태와 구별된다.
(2) 망형 데이터모델
①망형 모델에서 링크는 오너와 멤버 개념을 사용하며, 전체적인 데이터베이스 구조는 임의
의 그래프 구조로서 레코드의 구조, 속성들, 키와 같은 제약조건 등을 표현한다.
(3) 관계형 데이터모델
①표현하고자 하는 개체의 모든 데이터와 데이터 사이의 관계를 모두가 테이블 형태로 기술
한다. 이런 테이블을 관계형 데이터베이스의 릴레이션 이라 부른다.
②하나의 키값으로 한 튜플을 유일하게 식별하는 주키의 속성은 중복을 불허한다.
③장점 : 데이터베이스 구성이 단순하며, 이해하기 쉽고 완전한 데이터베이스 연산을 지원.
④단점 : 다른 데이터모델에 비해 릴레이션간의 조인 같은 복잡한 연산에 의해 다소 느린
문제가 있다.
(4) 객체지향 데이터모델
①최근에 데이터베이스 분야에서 많은 관심을 가지는 데이터모델로서 실세계에 존재하는 객
체를 기반으로 객체클래스, 복합객체, 상속, 캡슐화개념 등을 지원하고 있는 것이 특징이다.
②지리정보시스템, 공간데이터베이스나 시공간데이터베이스의 복잡한 현실세계를 효과적으
로 모델링할 수 있는 고급적인 데이터모델로 평가받고 있다.
(5) 객체관계형 데이터모델
①기존의 객체관계형 데이터베이스 엔진을 관계형 데이터베이스 엔진과 통합, 새로운 객체
관계형 엔진의 개발.
②기존의 관계형 데이터베이스 엔진에 새로운 기능을 추가하여 발전
8. 데이터베이스시스템 활용의 특성
(1) 데이터 중복의 최소화
(2) 데이터 독립성 보장(논리적 데이터 독립성, 물리적 데이터 독립성)
(3) 데이터의 일관성과 무결성 유지
(4) 데이터의 공유
(5) 데이터베이스의 사용자 인터페이스 표준화
(6) 여러 사용자의 동시 사용으로 인한 동시성 제어기능
(7) 저장매체의 파손과 같은 작업 도중에 발생하는 오류에 대한 복구기능
(8) 데이터베이스의 보안과 안정성 제공
(9) 사용자 요구에 다양한 뷰 등을 지원
9. 분산데이터베이스
(1) 어떤 시스템에서는 모든 자료를 중앙컴퓨터시스템에 두고 각 분산되어 있는 컴퓨터는
자료가 필요할 때마다 중앙의 컴퓨터에서 가져와서 처리한다.
(2) 공유기법으로 중앙의 대형 컴퓨터시스템에 전체 데이터베이스를 두고 각 분산된 컴퓨터
에는 전체 데이터베이스의 어느 한 부분만을 복사해 둔다
(3) 각 분산된 시스템에 그 시스템의 작업에 사용되는 자료를 각각 따로 두는 기법이다.
10. 데이터베이스의 발전 모델
(1) 멀티미디어 데이터베이스 응용 분야
①문서와 기록 관리 ②지식보급 ③교육과 훈련 ④마케팅, 광고, 소매, 운반
⑤실시간 제어와 모니터링
(2) 웹데이터베이스가 제공하는 기능
①웹브라우저라는 공통의 클라이언트 제공 ②하이퍼텍스트 방식의 사용자 인터페이스
③HTML이라는 표준문서 ④URL이라는 표준명명규칙
⑤CGI라는 표준연동 인터페이스 ⑥HTTP라는 표준프로토콜 제공
⑦웹과 데이터베이스의 연결에는 CGI를 이용하는 '간접연결'과 웹브라우저내에 자바 애플
릿, ActiveX와 같이 다운로드가 가능한 동적인 응용애플리케이션이 필요한 '직접연결'의 방
법이 있다.
제10장 데이터통신
1. 개요
(1) 데이터 통신은 "한 장소에서 다른 장소로 전송매체를 통하여 통신에 적합하도록 신호의
형태를 바꾸어 부호화된 정보를 전달하는 것"으로 표현할 수 있다. 또는 데이터를 조작하는
면에서 데이터를 가공, 처리하여 전송하는 것으로 이해할 수 있다.
(2) "데이터통신 = 데이터처리 + 원격통신"이라 할 수 있다.
(3) 데이터통신은 쌍방간의 통신이므로 데이터의 송신자, 수신자, 전송매체가 있어야 한다.
(4) 통신망은 전화망으로부터 시작하여 패킷망, LAN, MAN, 고속MAN, CATV, ISDN,
B-ISDN 등의 망으로 발전되면서 전송속도도 많이 향상되었다.
2. 데이터통신 시스템의 구성요소
①터미널 : 컴퓨터시스템과 통신할 수 있도록 원격지에 위치한다.
②모뎀 : 통신회선을 통해 데이터를 전송할 수 있도록 디지털 신호의 데이터를 아날로그 신
호형태로 바꾸는 장치이다.
③통신채널 : 데이터를 전송하는 채널로서 전화선, 동축케이블, 마이크로웨이브, 인공위성 및
광통신채널 등이다.
④모뎀 : 터미널에서 보내 온 아날로그 신호의 데이터를 컴퓨터에서 처리할 수 있게 다시
디지털 신호로 변환하는 통신장비이다.
⑤통신제어장치 : 통신회선을 통해 송수신되는 데이터를 제어하고 감독하는 역할을 한다.
⑥컴퓨터시스템 : 전송된 데이터를 저장하는 주기억장치와 데이터통신을 위해 필요한 프로
그램 등이 이 컴퓨터 안에 저장되어 있다.
(1) 통신채널
①전화선 ②구리선
③동축케이블 : 전화선보다 빠른 속도로 데이터를 전송할 수 있으며 외부와의 차폐성이 좋
아 간섭현상이 적고 높은 주파수에서 빠른 전송이 가능하다. 용량이 커서 많은 데이터를 한
번에 전송할 수 있고, 케이부간의 혼선은 무시될 수 있고 주파수에 따른 신호의 감소나 전
송 지연의 변화가 적다.
④광케이블 : 빛의 전파와 반사, 굴절을 이용하여 데이터를 전송하는 기술로 다른 유선 전송
매체에 비해 대역폭이 넓고 크기가 작으며 무게가 가볍다. 또한 정보전달의 안전성과 리피
터 설치 간격이 큰장점을 갖고 있다.
⑤마이크로웨이브시스템 : 라디오 신호처럼 공간을 통해 신호를 전달한다.
⑥통신위성 : 가장 장거리로 통신할 수 있는 것이다.
(2) 통신제어장치 : 모뎀과 컴퓨터시스템의 사이에서 데이터가 전송될 수 있는 통로를 만들
어 주는 장치로 전방처리기는 가장 발달된 통신제어장치라고 할 수 있다.
3. 데이터통신시스템의 처리방식
(1) 데이터서비스 처리형태
①즉시처리(온라인) : 트랜잭션처리, 시분할처리
②일괄처리 : 원격일괄처리(온라인), 센터일괄처리(오프라인)
(2) 트랜잭션처리방식
①은행의 창구에서와 같이 거래가 발생되면 이 거래를 즉시 처리해 주는 방식이다.
②이 방식의 특징은 신속 정확한 처리를 위한 즉시성과 안정성이다.
(3) 시분할처리방식
①컴퓨터의 처리시간을 분할하여 느린 속도의 다수 입출력터미널을 연결하여 동시에 컴퓨터
를 이용함으로써 컴퓨터 자원의 공동 활용을 가능하게 하는 처리 방식이다.
②실시간 응답을 수행함으로써 대화형 처리라고도 한다.
(4) 원격일괄처리방식
①대량의 정보를 한꺼번에 처리할 수 있으므로 컴퓨터의 이용 효율을 높일 수 있고, 또 긴
급을 요하지 않는 과학기술의 계산, 정보검색 등에 매우 유효한 처리방식이다.
4. 데이터통신 속도와 통신량
(1) 회선속도는 1초 동안 1회선으로 전송할 수 있는 비트의 수이다.
(2) 전송하는 속도는 채널의 등급에 따라 다른데, 이 채널은 다음과 같이 세 가지가 있다.
①저속도 또는 협역 주파수대역 : 예> 전신회선
②중속도 또는 음성 주파수대역 : 예> 전화선
③고속도 또는 광역 주파수대역 : 예> 위성통신
(3) 데이터 전송을 위한 동기화의 기법은 동기식 전송 방식과 비동기식 전송 방식이 있다.
비동기식 전송은 전송되는 문자의 앞과 뒤에 각각 시작비트와 정지비트가 있는 경우이고,
동기식 전송은 시작비트, 정지비트 없이 문자들을 그룹으로 묶어 전송하는 방식이다.
(4) 전송회선의 형태는 단일방식, 반이중방식, 전이중방식의 세 가지가 있다.
①단일방식 : 단지 한 방향으로만 데이터를 전송한다.
②반이중방식 : 데이터를 양쪽 방향으로 전송하는데 동시에 양쪽 방향으로 할 수는 없다
③전이중방식 : 데이터를 동시에 양쪽 방향으로 송수신할 수 있다. 회송시간이 없다.
5. 회선과 통신로의 구성
(1) 회선의 구성
①지점간회선 : 각 터미널에서 데이터를 송수신할 때 각각 컴퓨터시스템에 연결된 전용선을
사용한다.
②다지점공유회선 : 한 회선에 여러 개의 터미널이 연결되는 방식으로 조회시스템에 적합.
(2) 데이터 전송을 위한 통신로 구성
①지점간 방식에서는 공용회선과 전용회선의 두 가지 회선 중에 하나를 선택하여 사용.
②다지점공유의 대표적인 예는 전용회선이다. 통신로 구성 방법은 폴링과 주소지정이 있다.
폴링은 컴퓨터와 관련 통신제어장치에 의해 수행되며, 터미널이 컴퓨터시스템으로 데이터를
전송하려고 할 때 통신로를 구성하기 위해 사용된다.
6. 데이터통신망 형태
(1) 일반적으로 네트워크는 성형 네트워크, 환형 네트워크, 버스형 네트워크의 세 형태이다.
①지점간 성형 네트워크 : 중앙에 컴퓨터시스템이 있고 그 주위에 여러 개의 터미널이 마치
별의 모양을 이룬 것과 같이 구성된 네트워크이다.
②혼합 성형 네트워크 : 지점간 회선과 다지점공유 회선이 혼합된 형태로 어떠한 터미널도
중앙의 컴퓨터시스템과 통신을 한다.
③환형 네트워크 : 중앙에 집중된 컴퓨터시스템을 사용하지 않으며 일련의 컴퓨터시스템들
끼리 통신을 하는 네트워크이다.
④버스형 네트워크 : 하나의 통신 회선상에 여러 대의 터미널을 설치하여 주컴퓨터시스템과
터미널 혹은 터미널과 터미널간의 통신이 가능한 네트워크이다.
7. 통신망의 종류
(1) 통신교환망 : 회선교환망, 메시지교환망, 패킷교환망
(2) 방송통신망 : 패킷무선망, 위성통신망, 근거리망
(3) 전화망 : 시내교환기가 가입자를 연결하고 시내(외)교환기가 서로 중계회선으로 연결되
어 계층적으로 구성된다.
(4) 패킷망 : 패킷망에서는 송신하려는 데이터정보를 적당한 길이로 분할하여, 분할된 각각
의 데이터 정보에 수신인 주소 등의 제어정보를 붙인다. 이를 패킷이라 한다. 패킷망의 예로
는 SNA, X.25, 인터넷 등이 있다.
(5) 근거리통신망(LAN) : LAN은 동일 구내, 동일 건물내로 한정되어 컴퓨터통신을 중심으
로 한 통신망으로, 하나의 기관에서 자체 업무를 효율적으로 수행하기 위해 구성된다. LAN
의 전송속도는 고속으로 성형, 환형, 버스형 LAN으로 분류할 수 있고 그 특징은 다음과 같
다. ①포괄하는 지역적 범위가 수 km 이내로 제한된다. ②LAN을 통한 데이터의 전송속
도가 적어도 수 Mbps 이상이다. ③하나의 기관에 속하는 사설망이다.
(6) 부가가치통신망(VAN) : VAN이란 입력정보를 그대로 상대방에게 출력하는 네트워크와
는 달리 속도변환, 미디어변환, 프로토콜변환 등의 각종 변환과 메시지 축적 통신기능 등 이
른바 통신처리기능을 실현하는 네트워크를 말한다. 이런 서비스의 예로는 기업용 데이터베
이스, 신제품정보, 기업경영정보, 상품정보 등과 같은 기업정보서비스, 부동산, 주식가격, 여
행정보, 구직안내 등과 같은 개인정보서비스, 홈뱅킹, 홈쇼핑과 같은 정보처리서비스 등이
포함된다.
(7) 종합정보통신망(ISDN) : ISDN은 통신망을 전자화, 디지털화함으로써 모든 서비스를 일
괄 처리할 수 있도록 하여 사용자들의 편리성 및 다양성을 한층 더 향상시켜, 정보의 생성,
처리 수송 등을 가장 효율적으로 할 수 있는 정보화 사회의 통신망 형태이다.
(8) 광대역 ISDN(B-ISDN) : 유선 또는 무선의 광대역 전송방식과 광대역 교환방식을 통해
서 가입자와 서비스 제공자를 연결하여 각종 광대역 및 협대역서비스를 통합하여 제공하는
디지털 통신망을 말한다.
(9) FDDI에서는 100Mbps의 전송속도를 규정하고 있는데, 이는 10Mbps인 이더넷이나,
9600bps 모뎀과 비교한다면 적어도 1000배 이상의 속도이다. 흔히 '꿈의 광섬유'라 부르는
광케이블은 많은 데이터를 전송할 수 있다는 것이 가장 큰 장점이고, 또 하나의 장점은 전
자기적 잡음에 영향을 받지 않는다는 것이다.
(10) 비동기전송모드(ATM) : ATM은 패킷통산과 유사한 것으로 전송중의 패킷처리를 훨씬
간단히 하여 회선교환과 비슷한 정도의 고속동작을 가능하게 한 것이다. 즉, 패킷교환의 유
연성과 회선교환의 고속성을 결합시킨 것이다.
(11) 초고속 정보통신망
8. 인터넷
(1) 도메인은 사이트의 성격을 나타낸다.
(2) 인터넷상에 있는 모든 시스템은 인터넷 번호(IP)라고 불리는 고유의 주소를 가지고 있
다.
(3) TCP/IP(Transmission Control Protocol/Internet Protocol)는 컴퓨터와 데이터통신장치를
컴퓨터통신망에 접목시키기 위하여 사용되는 100가지가 넘는 데이터통신 프로토콜집합에 대
한 일반적인 이름이다.
제11장 PC통신과 인터넷
1. 개요
(1) PC통신의 기능
①생활의 필요정보와 원하는 자료를 쉽게 얻을 수 있다.
②다양한 사람들과 대화 및 취미활동을 할 수 있다.
③전자우편으로 편지를 주고받을 수 있다.
④오락서비스 기능으로 휴식을 취할 수 있다.
(2) 인터넷의 기능
①월드 와이드 웹(WWW=World Wide Web) ②전자우편(e-mail)
③유즈넷(Usenet) ④파일전송(FTP)
⑤아키(Archie) : 익명의 파일전송 사이트의 파일들을 검색할 목적으로 만들어졌다.
⑥고퍼(Gopher) : 통합정보의 제공을 위해서 데이터를 색인하여 정보를 메뉴방식으로 검색.
⑦웨이즈(WAIS) : 아키보다 훨씬 광범위한 분야에서 정보를 검색한다. 웨이즈를 사용하는
목적은 찾고자 하는 문서가 무엇인지 정확히 모를 때, 검색어를 이용해서 문서를 찾을 때,
그리고 텍스트 문서를 비롯해서 멀티미디어 자료를 찾을 때이다.
2. 국내 PC통신 서비스(교재 326-337쪽 참조)
3. 인터넷 항해를 위한 준비
(1) LAN 환경
①네트워크의 장점 : 하드웨어장치 및 소프트웨어의 공유
②네트워크의 종류
a.클라이언트-서버 방식 : 서버는 자원을 제공하는 시스템을 말하고 클라이언트는 자원을
가져다 사용하는 시스템을 말한다. 이 방식은 하나의 서버에 여러 대의 클라이언트를 연결
하여 동작된다.
b.피어-투-피어 방식 : 서버가 없이 시스템끼리 1대 1의 결합 방법을 채택하여 모든 시스템
이 서버이면서 클라이언트인 셈이다. 소규모의 네트워크에 적합하여 특별한 운영체제가 필
요없이 windows 95만으로 구축이 가능하다.
(2) 전화접속환경