본문내용
1. 전산직 계리직 일반
1.1. 컴퓨터 시스템의 구성요소
컴퓨터는 하드웨어와 소프트웨어로 구성된다. 하드웨어는 중앙처리장치(CPU), 기억장치, 입출력장치로 이루어져 있다. 중앙처리장치는 제어장치와 연산장치, 레지스터로 구성된다. 제어장치는 주기억장치로부터 명령어를 인출하고 해독하여 각 장치에 제어신호를 전달한다. 연산장치는 명령어를 실행하여 데이터를 계산하고 처리한다. 레지스터는 데이터 처리 시 연산의 중간 결과를 기억한다. 기억장치는 주기억장치와 보조기억장치로 구성되며, 캐시 기억장치와 연관기억장치, 레지스터 등의 특수 기억장치도 있다. 주기억장치는 프로그램과 데이터를 기억하며, 보조기억장치는 데이터와 프로그램을 반영구적으로 저장한다. 입출력장치는 컴퓨터 외부와의 정보 교환을 담당한다. 입력장치는 컴퓨터 외부에서 내부로 데이터를 전송하며, 출력장치는 컴퓨터 내부에서 처리한 데이터를 외부로 전송한다. 소프트웨어는 시스템 소프트웨어와 응용 소프트웨어로 구분된다. 시스템 소프트웨어에는 운영체제, 언어번역기, 링커, 로더 등이 포함되며, 응용 소프트웨어에는 워드프로세서, 스프레드시트 등이 포함된다. 펌웨어는 하드웨어를 제어하는 마이크로 프로그램이다. 컴퓨터는 부팅 과정을 통해 시스템이 초기화되고 운영체제가 실행되며, 구조적 발전을 거쳐 왔다.컴퓨터는 처리 방식에 따라 일괄처리 시스템, 다중 프로그래밍 시스템, 시분할 시스템, 다중 처리 시스템, 실시간 처리 시스템, 분산 처리 시스템 등 다양한 유형으로 분류된다. 일괄처리 시스템은 일정 기간 동안 모아진 자료를 한꺼번에 처리하는 방식이다. 다중 프로그래밍 시스템은 하나의 CPU를 여러 프로그램이 번갈아 사용하여 마치 동시에 실행되는 것처럼 처리한다. 시분할 시스템은 시스템을 여러 사용자에게 일정 시간 단위로 나누어 할당하는 방식이다. 다중 처리 시스템은 여러 개의 CPU와 공유된 주기억장치로 다수의 프로그램을 동시에 처리한다. 실시간 처리 시스템은 작업 발생 즉시 처리하여 신속한 응답을 보장한다. 분산 처리 시스템은 여러 컴퓨터가 통신망으로 연결되어 업무를 분산 처리한다. 이와 같이 컴퓨터 시스템은 다양한 방식으로 분류되어 발전해왔다.
1.2. 데이터의 표현과 컴퓨터 연산
컴퓨터는 데이터를 이진수로 표현하며, 이를 기반으로 다양한 연산을 수행한다. 비트(bit)는 데이터의 최소 단위로 0과 1의 값을 가지며, 이를 조합하여 숫자, 문자, 기호 등 다양한 형태의 데이터를 표현할 수 있다. 니블(nibble)은 4비트로 구성되며, 이를 조합하여 16진수 표현이 가능하다. 8비트로 구성된 바이트(byte)는 문자 표현의 최소 단위이다. 워드(word)는 CPU의 기본 연산 단위로, 주소 지정 시 활용된다.
수의 표현 방식은 진법에 따라 다양한 형태로 변환이 가능하다. 2진수, 8진수, 16진수 등 다양한 진법으로 표현할 수 있으며, 각 진법 간의 변환 기준은 해당 진법의 숫자로 나누어 나머지를 차례로 읽거나, 해당 진법의 숫자로 곱해 더하는 방식으로 이루어진다. 이를 통해 10진수를 다른 진법으로, 다른 진법을 10진수로 변환할 수 있다.
단, 비트 연산 시에는 주로 2진수를 사용하며, 이를 기반으로 한 논리 연산(AND, OR, NOT, XOR)과 산술 연산(덧셈, 뺄셈, 곱셈, 나눗셈)이 가능하다. 이러한 논리 연산과 산술 연산은 컴퓨터의 중요한 기능으로, 데이터 처리에 활용된다.
코드(code)는 문자나 기호를 표현하기 위한 방식으로, BCD, ASCII, EBCDIC, 유니코드 등이 대표적이다. BCD 코드는 6비트로 64개의 문자를 표현하며, ASCII 코드는 7비트로 128개의 문자를, EBCDIC 코드는 8비트로 256개의 문자를 표현할 수 있다. 유니코드는 언어와 상관없이 한 문자를 16비트로 표현하는 방식으로, 65,536개의 문자를 지원한다.
비트와 바이트 단위의 기억 용량과 시간 단위의 개념도 중요하다. 메모리 용량의 경우 KB, MB, GB, TB 등의 단위로 표현되며, 시간 단위로는 ms, us, ns 등이 사용된다. 이러한 개념들은 컴퓨터 시스템의 성능과 효율성을 평가하는 데 활용된다.
1.3. 디지털 논리
디지털 논리는 컴퓨터의 논리 연산을 다루는 중요한 개념이다. 전자 회로 상에서 논리 게이트를 이용하여 수행되는 논리 연산은 디지털 컴퓨터의 핵심을 이루고 있다.
논리 게이트는 AND, OR, NOT 등의 기본적인 논리 연산을 수행하는 전자 회로이다. AND 게이트는 두 입력이 모두 1일 때만 출력이 1이 되고, OR 게이트는 두 입력 중 하나라도 1이면 출력이 1이 된다. 그리고 NOT 게이트는 입력을 반전시켜 출력을 내보낸다. 이러한 논리 게이트들을 조합하여 복잡한 논리 회로를 구성할 수 있다.
논리 회로를 간략화하는 방법으로 부울 대수와 카르노 맵이 활용된다. 부울 대수는 논리식을 단순화하는 일련의 법칙을 제공하며, 카르노 맵은 논리식을 시각적으로 표현하여 최소화할 수 있는 방법을 제공한다. 이를 통해 논리 회로의 복잡도를 낮출 수 있다.
또한 디지털 논리 회로에는 조합논리회로와 순서논리회로가 있다. 조합논리회로는 현재 입력값만으로 출력값이 결정되는 회로이며, 순서논리회로는 현재 입력값과 이전 상태에 따라 출력값이 결정되는 회로이다. 반가산기, 전가산기, 디코더, 인코더, 멀티플렉서, 디멀티플렉서 등이 조합논리회로의 대표적인 예이다.
이처럼 디지털 논리는 컴퓨터의 기본적인 동작 원리를 이해하는 데 필수적인 개념이며, 다양한 논리 회로를 통해 복잡한 계산과 제어를 수행할 수 있다.
1.4. 중앙처리장치(CPU)
제어장치, 연산장치, 레지스터는 중앙처리장치(CPU)를 구성하는 주요 요소이다. 제어장치는 주기억장치로부터 명령어를 인출하고 해독하며, 각 장치에 제어신호를 전달한다. 연산장치는 명령어를 실행하여 데이터를 계산하고 처리한다. 레지스터는 연산의 중간 결과를 일시적으로 기억하는 임시 저장장치이다. 제어장치, 연산장치, 레지스터는 서로 밀접하게 연계되어 CPU의 핵심적인 기능을 수행한다. 이들은 컴퓨터의 동작을 제어하고 데이터를 연산하는 데 필수적인 요소이다.
1.5. 기억장치
주기억장치는 컴퓨터에서 CPU와 직접 정보를 교환하는 기억장치이다. 주기억장치는 RAM(Random Access Memory)과 ROM(Read Only Memory)으로 구성된다. RAM은 휘발성 메모리로 전원이 꺼지면 저장된 정보가 사라지지만 CPU가 직접 접근하여 데이터를 읽고 쓸 수 있다. ROM은 비휘발성 메모리로 전원이 꺼져도 저장된 정보가 지워지지 않으며 CPU가 읽기 전용으로 접근할 수 있다.
보조기억장치는 데이터와 프로그램을 저장할 수 있는 비소멸성 기억장치이다. CPU는 직접 보조기억장치에 접근할 수 없고 주기억장치를 거쳐야 한다. 대표적인 보조기억장치로는 하드디스크가 있다. 하드디스크는 자기 디스크에 데이터를 저장하며 대용량 저장이 가능하지만 접근 속도가 느리다.
특수 기억장치에는 캐시 기억장치, 연관 기억장치, 레지스터 등이 있다. 캐시 기억장치는 CPU와 주기억장치 사이에 위치하여 자주 접근하는 데이터를 빠르게 제공한다. 연관 기억장치는 키워드 검색을 위해 사용되며, 레지스터는 CPU 내부의 임시 기억장치로 사용된다.
입출력장치는 컴퓨터 외부와 정보를 교환하는 장치이다. 입력장치는 외부의 데이터를 내부로 전송하고, 출력장치는 내부에서 처리한 데이터를 외부로 전송한다. 입력장치로는 MICR, OCR, OMR, 마우스, 키보드 등이 있고, 출력장치로는 모니터, 프린터 등이 있다.
1.6. 입출력장치
입력장치는 컴퓨터 외부에서 내부로 데이터를 전송하는 역할을 한다. MICR, OCR, OMR, 마우스, 키보드 등이 대표적인 입력장치이다. 출력장치는 컴퓨터 내부에서 처리한 데이터를 외부로 전송하는 기능을 한다. 모니터, 프린터 등이 대표적인 출력장치이다. 입출력장치는 컴퓨터와 사용자 간의 유기적인 데이터 전송을 가능하게 함으로써 컴퓨터 시스템의 완성도를 높인다. 따라서 사용자가 원하는 정보를 보다 효율적이고 편리하게 입출력할 수 있도록 다양한 입출력장치들이 개발되고 있다.
2. 정보보호론
2.1. 정보보호의 목표
기밀성(비밀성), 무결성, 가용성이 정보보호의 주요 목표이다.
기밀성은 권한이 없는 사용자가 정보에 접근하지 못하도록 보장하는 것이다. 접근통제 및 데이터 암호화를 통해 기밀성을 보장할 수 있으며, 개인 프라이버시와 소유권 등을 보장한다.
무결성은 정보가 승인되지 않은 방식으로 변경되지 않도록 보장하는 것이다. 해시함수, 메시지 인증 코드, 전자서명 등을 통해 무결성을 보장할 수 있으며, 정보의 정확성과 완전성을 확보할 수 있다.
가용성은 권한 있는 사용자가 필요할 때 언제든 정보를 사용할 수 있도록 보장하는 것이다. 데이터의 백업 및 중복성 유지를 통해 가용성을 보장할 수 있다.
인증성은 사용자나 객체의 자격을 검증하여 입증하는...