카테고리 없음

[정보처리기사 필기] 시나공 2025년대비 매년 출제되는 키워드 찾기 259문제(151~200)

growupwithme 2025. 2. 5. 22:48

시나공 정보처리기사 필기 자료 - 매년 출제되는 키워드 찾기 259문제

[시나공] 정보처리 기사 필기 - 기출문제

 

시나공

컴활, 정보처리, 워드프로세서 등 IT 자격증 전문. 해설 포함 CBT, 최신 기출 자료 무료, 실기 채점 프로그램 제공

www.sinagong.co.kr

 

151. ALTER TABLE : 테이블에 대한 정의를 변경하는 명령문

ALTER TABLE 테이블명 ADD 속성명 데이터_타입[DEFAULT '기본값'];
ALTER TABLE 테이블명 ALTER 속성명 [SET DEFAULT '기본값'];
ALTER TABLE 테이블명 DROP COLUMN 속성명 [CASCADE]

 

 ADD : 새로운 속성(열)을 추가할 때 사용

 

 ALTER : 특정 속성의 Default 값을 변경할 때 사용함

 

○ DROP COLUMN : 특정 속성을 삭제할 때 사용함

 

 

152. CRUD 분석 : '생성(Create), 읽기(Read), 갱신(Update), 삭제(Delete)'의 앞글자만 모아서 만든 용어로 데이터베이스 테이블에 변화를 주는 트랜잭션의 CRUD 연산에 대해 CRUD 매트릭스를 작성하여 분석하는 것

 

- CRUD 분석으로 테이블에 발생되는 트랜잭션의 주기별 발생 횟수를 파악하고 연관된 테이블들을 분석하면 테이블에 저장되는 데이터의 양을 유추할 수 있음

 

 

154. 인덱스(Index) : 데이터 레코드를 빠르게 접근하기 위해 <키 값, 포인터> 쌍으로 구성되는 데이터 구조

 

- 인덱스는 데이터가 저장된 물리적 구조에 접근하는 방법을 제공

 

- 인덱스를 통해서 파일 레코드에 대한 액세스 빠르게 수행 가능

 

- 레코드의 삽입과 삭제가 수시로 일어나는 경우에는 인덱스의 개수를 최소로 하는 것이 효율적임

 

- 데이터 정의어(DDL)를 이용하여 사용자가 생성, 변경, 제거 가능

 

 

155. 스래싱(Thrashing) : 프로세스의 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상

 

- 프로세스 처리 도중, 참조할 페이지가 주기억장치에 없어 나타나는 현상으로, 전체 시스템 성능이 저하됨

 

- 다중 프로그래밍의 정도가 높아짐에 따라 CPU의 이용률은 어느 특정 시점까지는 높아지지만, 다중 프로그래밍의 정도가 더욱 커지면 스래싱이 나타나고, CPU의 이용률은 급격히 감소하게 됨

 

 

156. stdlib.h 함수 : C 표준 유틸리티 함수를 모아놓은 헤더파일

 

atoi() : 문자열을 정수형(int)으로 변환

 

atof() : 문자열을 실수형(float)으로 변환

 

atol() : 문자열을 log형 정수로 변환

 

 itoa() : 숫자를 문자열로 변환

 

ceil() : 자리 올림

 

 floor() : 자리 버림

 

 rand() : 난수 발생

 

 div : 정수 나눗셈  

 

 

158. 교착상태(Dead Lock) : 상호 배제에 의해 나타나는 문제점으로, 둘 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상

 

교착상태 발생의 필요 충분 조건

 

상호 배제(Mutual Exclusion) : 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 함

 

점유와 대기(Hold and Wait) : 최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가가 있어야 함

 

비선점(Non-preemption) : 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 힘

 

 환형 대기(Circular Wait) : 공유 자원과 공유 자원을 사용하기 위해 대기하는 프로세스들이 원형으로 구성되어 있어 자신에게 할당된 자원을 점유하면서 앞이나 뒤에 있는 프로세스의 자원을 요구해야 함

 

교착상태의 해결방법

 

 예방 기법(Prevention) : 교착상태가 발생하지 않도록 사전에 시스템을 제어하는 방법으로, 교착상태 발생의 네 가지 조건 중에서 어느 하나를 제거(부정)함으로써 수행됨. 자원의 낭비가 가장 심한 기법

 

 회피 기법(Avoidance) : 교착상태가 발생할 가능성을 배제하지 않고 교착상태가 발생하면 적절히 피해나가는 방법으로, 주로 은행원 알고리즘(Banker's Algorithm)이 사용됨

* 은행원 알고리즘(Banker's Algorithm) : E.J. Dijkstra가 제안한 것으로, 은행에서 모든 고객의 요구가 충족되도록 현금을 할당하는 데서 유래한 기법

 

 발견 기법(Detection) : 시스템에 교착상태가 발생했는지 점검하여 교착상태에 있는 프로세스와 자원을 발견하는 것. 교착상태 발견 알고리즘과 자원 할당 그래프 등을 사용할 수 있음

 

회복 기법(Recovery) : 교착상태를 일으킨 프로세스를 종료하거나 교착상태의 프로세스에 할당된 자원을 선점하여 프로세스나 자원을 회복하는 것을 의미함 

 

 

159. 인터넷 계층의 주요 프로토콜

 

IP(Internet Protocol) : 전송할 데이터에 주소를 지정하고, 경로를 설정하는 기능을 함. 비연결형인 데이터그램 방식을 사용하는 것으로 신뢰성이 보장되지 않음

 

ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜) : IP와 조합하여 통신중에 발생하는 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할을 하며, 헤더는 8Byte로 구성됨

 

IGMP(Internet Group Management Protocol, 인터넷 그룹 관리 프로토콜) : 멀티캐스트를 지원하는 호스트나 라우터 사이에서 멀티캐스트 그룹 유지를 위해 사용됨

 

ARP(Address Resolution Protocol, 주소 분석 프로토콜) : 호스트의 IP 주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소(MAC Address)로 바꿈

 

RARP(Reverse Address Resolution Protocol) : ARP와 반대로 물리적 주소를 IP 주소로 변환하는 기능을 함

 

 

160. UNIX / LINUX 기본 명령어

명령어 기능
cat 파일 내용을 화면에 표시함
chdir 현재 사용할 디렉터리의 위치를 변경함
chmod 파일의 보호 모드를 설정하여 파일의 사용 허가를 지정함
chown 소유자를 변경함
cp 파일을 복사함
exec 새로운 프로세스를 수행함
find 파일을 찾음
fork 새로운 프로세스를 생성함(하위 프로세스 호출, 프로세스 복제 명령)
fsck 파일 시스템을 검사하고 보수함
getpid 자신의 프로세스 아이디를 얻음
getppid 부모 프로세스 아이디를 얻음
ls 현재 디렉터리 내의 파일 목록을 확인함
mount/unmount 파일 시스템을 마운팅한다/마운팅 해제함
rm 파일을 삭제함
wait fork 후 exec에 의해 실행되는 프로세스의 상위 프로세스가 하위 프로세스 종료 등의 event를 기다림

 

 

161. 스크립트 언어 종류

 

 자바 스크립트(JAVA Script) : 웹 페이지의 동작을 제어하는 데 사용되는 클라이언트용 스크립트 언어로, 클래스가 존재하지 않으며 변수 선언도 필요 없음. 서버에서 데이터를 전송할 때 아이디, 비밀번호, 수량 등의 입력 사항을 확인하기 위한 용도로 많이 사용됨

 

파이썬(Python) : 객체지향 기능을 지원하는 대화형 인터프리터 언어로, 플랫폼에 독립적이고 문법이 간단하여 배우기 쉬운 언어

 

 

163. 흐름 제어(Flow Control) : 네트워크 내의 원활한 흐름을 위해 송수신 측 사이에 전송되는 패킷의 양이나 속도를 규제하는 기능

 

 정지-대기(Stop-and-Wait) : 수신 측의 확인 신호(ACK)를 받은 후에 다음 패킷을 전송하는 방식으로 한 번에 하나의 패킷만을 전송할 수 있음

 

슬라이딩 윈도우(Sliding Window) : 확인 신호를 이용하여 송신 데이터의 양을 조절하는 방식으로 수신 측의 확인 신호를 받지 않더라도 미리 정해진 패킷의 수만큼 연속적으로 전송하는 방식이며 한 번에 여러 개의 패킷을 전송할 수 있어 전송 효율이 좋음

 

 

164.  전송 계층의 주요 프로토콜

 

TCP(Transmission Control Protocol) 

 

 UDP(User Datagram Protocol)

 

  RTCP(Real-Time Control Protocol)

 

 

165. 워킹 셋(Working Set) : 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합

 

- 프로그램의 Locality특징을 이용함

 

- 자주 참조되는 워킹 셋을 주기억장치에 상주시키으로써 페이지 부재 및 페이지 교체 현상이 줄어들어 프로세스의 기억장치 사용이 안정됨

 

- 시간이 지남에 따라 자주 참조하는 페이지들의 집합이 변화하기 때문에 워킹 셋은 시간에 따라 변경됨

 

 

166. LAN의 표준안

 

IEEE 802의 주요 표준 규격

표준 규격 내용
802.1 전체의 구성, OSI 참조 모델과의 관계, 통신망 관리 등에 관한 규약
802.2 논리 링크 제어(LLC) 계층에 관한 규약
802.3 CSMA/CD 방식의 매체 접근 제어 계층에 관한 규약
802.4 토큰 버스 방식의 매체 접근 제어 계층에 관한 규약
802.5 토른 링 방식의 매체 접근 제어 계층에 관한 규약
802.6 도시형 통신망(MAN)에 관한 규약
802.9 종합 음성/데이터 네트워크에 관한 규약
802.11 무선 LAN에 관한 규약

 

802.11의 버전

802.11(초기버전) 2.4GHz 대역 전파와 CSMA/CA 기술을 사용해 최고 2Mbps까지의 전송 속도를 지원함
802.11a 5GHz 대역의 전파를 사용하며, OFDM 기술을 사용해 최고 54Mbps까지의 전송 속도를 지원함
802.11b 802.11 초기 버전의 개선안으로 등장하였으며, 초기 버전의 대역 전파와 기술을 사용해 최고 11Mbps의 전송 속도로 기존에 비해 5배 이상 빠르게 개선됨
802.11e 802.11의 부가 기능 표준으로, QoS 기능이 지원되도록 하기 위해 매체 접근 제어(MAC) 계층에 해당하는 부분을 수정함
802.11g 2.4GHz 대역의 전파를 사용하지만 5GHz 대역의 전파를 사용하는 802.11a와 동일한 최고 54Mbps까지의 전송 속도를 지원함
802.11i 802.11의 보안 기능 표준으로, 인증방식에 WPA/WPA2를 사용함
802.11n 2.4GHz 대역과 5GHz 대역을 사용하는 규격으로, 최고 600Mbps까지의 전송 속도를 지원함

 

 

169. OSI 7계층 : 1~3 계층을 하위 계층, 4~7 계층을 상위 계층이라고 함

 

- 하위 계층 : 물리 계층 → 데이터 링크 계층 → 네트워크 계층

 

- 상위 계층 : 전송 계층 → 세션 계층 → 표현 계층 → 응용 계층

 

  물리 계층(Physical Layer) : 전송에 필요한 두 장치 간의 실제 접속과 절단 등 기계적, 전기적, 기능적, 절차적 특성에 대한 규칙 정의

 

  데이터 링크 계층(Data Link Layer) : 두 개의 인접한 개방 시스템들 간에 신뢰성 있고 효율적인 정보 전송을 할 수 있도록 시스템 간 연결 설정과 유지 및 종료를 담당함. 송수신 측의 속도 차이를 위한 흐름 제어 기능을 함. 프레임의 시작과 끝을 구분하기 위한 프레임의 동기화 기능을 함. 오류의 검출과 회복을 위한 오류 제어 기능을 함

 

 네트워크 계층(Network Layer, 망 계층) : 개방 시스템들 간의 네트워크 연결을 관리하는 기능과 데이터의 교환 및 중계 기능을 함. 네트워크 연결을 설정, 유지, 해제하는기능을 함. 경로 설정, 데이터 교환 및 중계, 트래픽 제어, 패킷 정보 전송을 수행함

 

 전송 계층(Transport Layer) : 논리적 안정과 균일한 데이터 전송 서비스를 제공함으로써 종단 시스템(End-to-End) 간에 투명한 데이터 전송을 가능하게 함. 종단 시스템 간의 전송 연결

 

○ 세션 계층(Session Layer) : 송 수신 측 간의 관련성을 유지하고 대화 제어를 담당함. 대화(회화) 구성 및 동기 제어, 데이터 교환 관리 기능을 함

 

표현 계층(Presentation Layer) : 응용 계층으로부터 받은 데이터를 세션 계층에 보내기 전에 통신에 적당한 형태로 변환하고, 세션 계층에서 받은 데이터는 응용 계층에 맞게 변환하는 기능을 함. 서로 다른 데이터 표현 형태를 갖는 시스템 간의 상호 접속을 위해 필요한 계층. 고드 변환, 데이터 암호화, 데이터 압축, 구문 검색, 정보 형식(포맷) 변환, 문맥 관리 기능을 함

 

응용 계층(Application Layer) : 사용자(응용 프로그램)가 OSI 환경에 접근할 수 있도록 서비스를 제공함

 

 

170. 가비지 콜렉터(Garbage Collector) : 변수를 선언만 하고 사용하지 않는 변수들이 점유한 메모리 공간을 강제로 해제하여 다른 프로그램들이 사용할 수 있도록 하는 모듈. Java에서 힙에 남아있으나 변수가 가지고 있던 참조값을 잃거나 변수 자체가 없어짐으로써 더 이상 사용되지 않는 객체를 제거해주는 역할.

 

 

171. Jave의 데이터 타입 크기 및 기억 범위

종류 데이터 타입 크기
문자 char 2Byte
정수 byte 1Byte
short 2Byte
int 4Byte
long 8Byte
실수 float 4Byte
double 8Byte
논리 boolean 1Byte

 

 

173. CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance) : 무선 랜에서 데이터 전송 시 매체가 비어있음을 확인한 뒤 충돌을 피하기 위해 일정한 시간을 기다린 후 데이터를 전송하는 방법으로 회선을 사용하지 않는 경우에도 확인 신호를 전송하여 동시 전송에 의한 충돌을 예방함

 

 

175. Python의 시퀀스 자료형(Sequence Type) : 리스트, 튜플, range, 문자열처러 ㅁ값이 연속적으로 이어진 자료형을 말함

 

리스트(List) : 다양한 자료형의 값을 연속적으로 저장하며, 필요에 따라 개수를 늘리거나 줄일 수 있음

 

 튜플(Tuple) : 리스트처럼 요소를 연속적으로 저장하지만, 요소의 추가, 삭제, 변경은 불가능함

 

 range : 연속된 숫자를 생성하는 것으로, 리스트, 반복문 등에서 많이 사용됨

 

 

177. CSMA/CD(Carrier Sense Multiple Access/Collision Detetion) : 이더넷 환경에서 장치가 매체에 접속하는 것을 관리하는 방법

유선 LAN인 이더넷에서는 CSMA/CD 방식을, 무선 LAN에서는 CSMA/CA 방식 사용

 

 

179. 가상기억장치의 일반적인 구현 방법

 

 페이징(Paging) 기법 : 가상기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 나눠진 프로그램(페이지)을 동일하게 나눠진 주기억장치의 영역(페이지 프레임)에 적재시켜 실행하는 기법

 

- 나눈 단위를 페이지(page)라고 하고, 페이지 크기로 일정하게 나누어진 주기억장치의 단위를 페이지 프레임(Page Frame)이라고 함

 

- 외부 단편화는 발생하지 않으나 내부 단편화는 발생할 수 있음

 

- 주소 변환을 위해서 페이지의 위치 정보를 가지고 있는 페이지 맵 테이블(Page Map Table)이 필요함

 

 세그먼테이션(Segmentation) 기법 : 가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 논리적인 단위(가변적인 크기)로 나눈 후 주 기억장치에 적재시켜 실행시키는 기법

 

- 나눈 단위를 세그먼트(Segment)라고 하며, 각 세그먼트는 고유한 이름과 크기를 가짐

 

- 주소 변환을 위해서 세그먼트가 존재하는 위치 정보를 가지고 있는 세그먼트 맵 테이블(Segment Map Table)이 필요

 

- 내부 단편화는 발생하지 않으나 외부 단편화는 발생할 수 있음

 

 

180. C언어의 구조체

 

구조체 : 자료의 종류가 다른 변수의 모임

 

- 구조체를 정의한다는 것은 int나 char 같은 자료형을 하나 만드는 것을 의미

 

- 구조체는 'struct'를 사용하여 정의 ex) struct sawon { char name[10]; char position[10]; int pay; }

 

 

181. 입력 데이터 검증 및 표현의 보안 약점

 

 메모리 버퍼 오버플로 : 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메모리의 범위를 넘어선 위치에서 자료를 읽거나 쓰려고 할 때 발생하는 보안 약점. 프로그램의 오동작을 유발시키거나 악의적인 코드를 실행시켜 공격자가 프로그램을 통제할 수 있는 권한을 획득하게 함. 메모리 버퍼를 사용할 경우 적절한 버퍼의 크기를 설정하고, 설정된 범위의 메모리 내에서 올바르게 읽거나 쓸 수 있도록 함으로써 방지할 수 있음

 

 SQL 삽입 : 웹 응용 프로그램에 SQL을 삽입하여 내부 데이터베이스 서버의 데이터를 유출 및 변조하고, 관리자 인증을 우회하는 보안 약점. 동적 쿼리에 사용되는 입력 데이터에 예약어 및 특수문자가 입력되지 않게 필터링 되도록 설정하여 방지할 수 있음

 

  경로 조작 및 자원 삽입 : 데이터 입출력 경로를 조작하여 서버 자원을 수정 및 삭제할 수 있는 보안 약점. 사용자 입력값을 식별자로 사용하는 경우, 경로 순회 공격을 막는 필터를 사용하여 방지할 수 있음

 

크로스사이트 스크립팅(XSS) : 웹페이지에 악의적인 스크립트를 삽입하여 방문자들의 정보를 탈취하거나, 비정상적인 기능 수행을 유발하는 보안 약점. HTML 태그의 사용을 제한하거나 스크립트에 삽입되지 않도록 '<,>,&' 등의 문자를 다른 문자로 치환함으로써 방지할 수 있음

 

 운영체제 명령어 삽입 : 외부 입력값을 통해 시스템 명령어의 실행을 유도함으로써 권한을 탈취하거나 시스템 장애를 유발하는 보안 약점. 웹 인터페이스를 통해 시스템 명령어가 전달되지 않도록 하고, 외부 입력값을 검증 없이 내부 명령어로 사용하지 않음으로써 방지할 수 있음

 

위험한 형식 파일 업로드 : 악의적인 명령어가 포함된 스크립트 파일을 업로드함으로써 시스템에 손상을 주거나, 시스템을 제어할 수 있는 보안 약점. 업로드 되는 파일의 확장자 제한, 파일명의 암호화, 웹사이트와 파일 서버의 경로 분리, 실행 속성을 제거하는 등의 방법으로 방지할 수 있음

 

 신뢰되지 않는 URL 주소로 자동접속 연결 : 입력 값으로 사이트 주소를 받는 경우 이를 조작하여 방문자를 피싱 사이트로 유도하는 보안 약점. 연결되는 외부 사이트의 주소를 화이트 리스트로 관리함으로써 방지할 수 있음

 

- FTP 바운스 공격 : FTP 프로토콜 구조의 허점을 이용한 공격

- 디렉토리 접근 공격 : 웹 루트 디렉토리 외부에 저장된 파일 또는 디렉토리에 접근하는 공격방법

 

 

183. ICMP(Internet Control Message Protocol) : IP와 조합하여 통신중에 발생하는 오류의 처리와 전송 경로, 변경 등을 위한 제어 메시지를 관리하는 역할. IP의 동작 과정에서의 전송 오류가 발생하는 경우에 대비해 오류 저어보를 전송하는 목적으로 사용

 

- ARP(Address Resoultion Protocol) : 호스트 IP주소 → 연결된 네트워크 접속 장치의 물리적 주소(MAC Address)로 바꿈

 

- PPP(Point-to-Point Protocol) : 두 점 간을 접속하여 데이터 통신을 할 때 이용하는 WAN용 프로토콜

 

 

184.

- 라운드 로빈(RR, Round Robin) 스케줄링 : 선점형 스케줄링 기법 중 하나로 각 프로세스에게 동일한 시간 할당량을 부여하는 기법

 

다단계 큐(MQ; Multi-level Queue) 스케줄링 : 선점형 스케줄링 기법 중 하나로 프로세스를 특정 그룹으로 분류할 수 있을 경우 그룹에 따라 각기 다른 준비상태 큐를 사용하는 기법. FCFS(FIFO)와 RR 스케줄링을 혼합한 기법임.

 

 

185. 네트워크 관련 신기술

 

 메시 네트워크(Mesh Network) : 차세대 이동통신, 홈네트워킹, 공공 안전 등 특수 목적을 위한 새로운 방식의 네트워크 기술로, 대규모 디바이스의 네트워크 생성에 최적화되어 있음

 

 피코넷(PICONET) : 여러 개의 독립된 통신장치가 블루투스 기술이나 UWB 통신 기술을 사용하여 통신망을 형성하는 무선 네트워크 기술

 

 파장 분할 다중화(WDM, Wavelength Division Multiplexing) : 광섬유를 이용한 통신 기술의 하나로, 파장이 서로 다른 복수의 신호를 보냄으로써 여러 대의 단말기가 동시에 통신 회선을 사용할 수 있도록 하는 것. 파장이 다른 광선끼리는 서로 간섭을 일으키지 않는 성질을 이용한 기술

 

 클라우드 기반 HSM(Cloud-based Hardware Security Module) : 클라우드를 기반으로 암호화 키의 생성, 저장, 처리 등의 작업을 수행하는 보안기기를 가리키는 용어. 클라우드에 인증서를 저장하므로 스마트폰과 같은 개별 기기에 인증서를 저장할 필요가 없음. 암호화 키 생성이 하드웨어적으로 구현되기 때문에 소프트웨어적으로 구현된 암호 기술이 가지는 보안 취약점을 무시할 수 있음

 

 파스-타(PaaS-TA) : 소프트웨어 개발 환경을 제공하기 위해 개발한 개방형 클라우드 컴퓨팅 플랫폼

 

 징(Zing) : 10cm 이내 거리에서 3.5Gbps 속도의 데이터 전송이 가능한 NFC. 휴대용 스마트 기기, 노트북, 쇼핑몰, 거리 등의 광고나 키오스크에 접목하여 사용할 수 있음

 

 SSO(Single Sign On) : 한 번의 로그인으로 개인이 가입한 모든 사이트를 이용할 수 있게 해주는 시스템. 개인정보를 각 사이트마다 일일이 기록해야 하던 불편함을 해소할 수 있음. 기업에서는 회원에 대한 통합관리가 가능해 마케팅을 극대화시킬 수 있음

 

 스마트 그리드(Smart Grid) : 정보 기술을 전력에 접목해 효율성을 높인 시스템으로, 전력 IT라고도 부름. 전력선을 기반으로 모든 통신, 정보, 관련 애플리케이션 인프라를 하나의 시스템으로 통합하여 관리함으로써 효율적인 에너지 관리가 가능함

 

 

187. 자동화 추정 도구

 

SLIM : Rayleigh-Norden 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정 도구

 

 ESTIMACS : 다양한 프로젝트와 개인별 요소를 수용하도록 FP 모형을 기초로 하여 개발된 자동화 추정 도구

 

 

188. 정보시스템 구축 관리 방법론

 

구조적 방법론 : 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리 중심의 방법

 

- 쉬운 이해 및 검증이 가능한 프로그램 코드를 생성하는 것이 목적

 

- 복잡한 문제를 다루기 위해 분할과 정복(Divide and Conquer) 원리를 적용함

 

 정보공학 방법론 : 정보 시스템의 개발을 위해 계획, 분석, 설계, 구축에 정형화된 기법들을 상호 연관성 있게 통합 및 적용하는 자료(Data) 중심의 방법론

 

- 정보 시스템 개발 주기를 이용하여 대규모 정보 시스템을 구축하는데 적합

 

  컴포넌트 기반 방법론(CBD; Component Based Design) : 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조합하여 하나의 새로운 애플리케이션을 만드는 방법론

 

- 시간과 노력을 절감할 수 있고 새로운 기능을 추가하는 것이 간단하여 확장성이 보장됨

 

- 유지 보수 비용을 최소화하고 생산성 및 품질 향상 가능

 

 

189. 접근통제 기술

 

  임의 접근통제(DAC; Discretionary Access Control) : 데이터에 접근하는 사용자의 신원에 따라 접근 권한을 부여하는 방식

 

- 데이터 소유자가 접근통제 권한을 지정하고 제어

 

- 객체를 생성한 사용자가 생성된 객체에 대한 모든 권한을 부여받고, 부여된 권한을 다른 사용자에게 허가할 수 있음

 

- 임의 접근통제에 사용되는 SQL 명령어에는 GRANT와 REVOKE가 있음

 

 강제 접근통제(MAC; Mandatory Access Control) : 주체와 객체의 등급을 비교하여 접근 권한을 부여한는 방식

 

- 시스템이 접근통제 권한을 지정함

 

- 데이터베이스 객체별로 보안 등급을 부여할 수 있고, 사용자별로 인가 등급을 부여할 수 있음

 

- 주체는 자신보다 보안 등급이 높은 객체에 대해 읽기, 수정, 등록이 모두 불가능하고, 보안 등급이 같은 객체에 대해서는 읽기, 수정, 등록이 가능하고, 보안 등급이 낮은 객체는 읽기가 가능함

 

  역할기반 접근통제(RBAC; Role Based Access Control) : 사용자의 역할에 따라 접근 권한을 부여하는 방식

 

- 중앙관리자가 접근 통제 권한을 지정함

 

- 임의 접근통제와 강제 접근 통제의 단점을 보완하였으며, 다중 프로그래밍 환경에 최적화된 방식임

 

- 중앙관리자가 역할마다 권한을 부여하면, 책임과 자질에 따라 역할을 할당받은 사용자들은 역할에 해당하는 권한을 사용할 수 있음

 

 

190. Tripwire : 크래커가 침입하여 백도어를 만들어 놓거나, 설정 파일을 변경했을 때 분석하는 데이터 무결성 검사 도구

 

 

192. COCOMO의 소프트웨어 개발 유형

 

조직형(Organic Mode) : 기관 내부에서 개발된 중소규모의 소프트웨어로 일괄 자료 처리나 과학 기술 계산용, 비즈니스 자료 처리용으로 5만 라인 이하의 소프트웨어를 개발하는 유형으로 사무 처리용, 업무용, 과학용 응용 소프트웨어 개발에 적합함.

 

 반분리형(Semi-Detached Mode) : 조직형과 내장형의 중간형으로 트랜잭션 처리 시스템이나 운영체제, 데이터베이스 관리 시스템 등의 30만 라인 이하의 소프트웨어를 개발하는 유형. 컴파일러, 인터프리터와 같은 유틸리티 개발에 적합함.

 

내장형(Embedded Mode) : 초대형 규모의 트랜잭션 처리 시스템이나 운영체제 등의 30만 라인 이상의 소프트웨어를 개발하는 유형. 신호기 제어 시스템, 미사일 유도 시스템, 실시간 처리 시스템 등의 시스템 프로그램 개발에 적합함.

 

 

193. MQTT : 사물통신, 사물인터넷과 같이 대역폭이 제한된 통신환경에 최적화하여 개발된 푸시기술 기반의 경량 메시지 전송 프로토콜

 

- 메시지 매개자를 통해 송신자가 특정 메시지를 발행하고 수신자가 메시지를 구독하는 방식

 

 

194. Semaphores : IPC의 대표 메소드 중 하나로 공유 자원에 대한 접근 제어를 통해 프로세스 간 통신을 수행함.

 

- P와 V연산에 의해 임계 구역 접근 제어

 

- 상호 배제 원리 보장

 

- 초기화값 2, 임계구역에 2개의 프로세스가 들어갈 수 있음

 

- 멀티프로그래밍 환경에서 공유 자원에 대한 접근을 제한하는 방법

P(S) : while S <= 0 do skip;
S := S - 1 ;
V(S) : S := S + 1 ;

 

 

195. 소프트웨어 정의 기술(SDE, SDx; Software-Defined Ecerything) : 네트워크, 데이터 센터 등에서 소유한 자원을 가상화하여 개벼 ㄹ사용자에게 제공하고, 중앙에서는 통합적으로 제어가 가능한 기술

 

  소프트웨어 정의 네트워킹(SDN; Software Defined Networking) : 네트워크를 컴퓨터처럼 모델링하여 여러 사용자가 각각의 소프트웨어들로 네트워킹을 가상화하여 제어하고 관리하는 네트워크. 하드웨어에 의존하는 네트워크 체계에 비해 보다 효율적으로 네트워크를 제어, 관리할 수 있음. 기존 네트워크에는 영향을 주지 않으면서 특정 서비스의 전송 경로 수정을 통하여 인터넷상에서 발생하는 문제를 처리할 수 있음

 

  소프트웨어 정의 데이터 센터(SDDC; Software Defined Data Center) : 데이터 센터의 모든 자원을 가상화하여 인력의 개입없이 소프트웨어 조작만으로 관리 및 제어되는 데이터 센터

 

  소프트웨어 정의 스토리지(SDS; Software-Defined Storage) : 물리적인 데이터 스토리지를 가상화하여 여러 스토리지를 하나처럼 관리하거나, 하나의 스토리지를 여러 스토리지로 나눠 사용할 수 있는 기술

 

 

196. Putnam 모형 : 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 가정해 주는 모형으로 생명 주기 예측 모형이라고도 함

 

- 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 함

 

- 대형 프로젝트의 노력 분포 산정에 이용되는 기법임

 

- 개발 기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소

 

 

197. 네트워크 관련 장비

 

  네트워크 인터페이스 카드(NIC; Network Interface Card) : 컴퓨터와 컴퓨터 또는 컴퓨터와 네트워크를 연결하는 장치로, 정보 전송 시 정보가 케이블을 통해 전송될 수 있도록 정보 형태를 변경

 

  허브(Hub) : 한 사무실이나 가까운 거리의 컴퓨터들을 연결하는 장치로, 각 회선을 통합적으로 관리하며, 신호 증폭 기능을 하는 리피터의 역할도 포함함

 

 리피터(Repeater) : 전송되는 신호가 전송 선로의 특성 및 외부 충격 등의 요인으로 인해 원래의 형태와 다르게 왜곡되거나 약해질 경우 원래의 신호 형태로 재생하여 다시 전송하는 역할을 수행함

 

  브리지(Bridge) : LAN과 LAN을 연결하거나 LAN 안에서의 컴퓨터 그룹(세그먼트)을 연결하는 기능을 수행함. 네트워크를 분산적으로 구성할 수 있어 보안성을 높일 수 있음

 

  스위치(Switch) : 브리지와 같이 LAN과 LAN을 연결하여 훨씬 더 큰 LAN을 만드는 장치. 하드웨어를 기반으로 처리하므로 전송 속도가 빠름

 

 라우터(Router) : 브리지와 같이 LAN과 LAN의 연결 기능에 데이터 전송의 최적 경로를 선택할 수 있는 기능이 추가된 것으로, 서로 다른 LAN이나 LAN과 WAN의 연결도 수행함.

 

 게이트웨이(Gateway) : 전 계층(1~7계층)의 프로토콜 구조가 다른 네트웨크의 연결을 수행함. LAN에서 다른 네트워크에 데이터를 보내거나 다른 네트워크로부터 데이터를 받아들이는 출입구 역할을 함.

 

 

199. JSON(JaveScript Object Notation) : 웹과 컴퓨터 프로그램에서 용량이 적은 데이터를 교환하기 위해 데이터 객체를  속성-값 쌍으로 이루어진 데이터 객체를 전달하기 위해 사람이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷

 

- 비동기 처리에 사용되는 AJAX에서 XML을 대체하여 사용되고 있음

 

 

200. 소프트웨어 개발 프레임워크

 

프레임워크(Framework) : 소프트웨어 개발에 공통적으로 사용되는 구성 요소와 아키텍처를 일반화하여 손쇱게 구현할 수 있도록 여러 가지 기능들을 제공해주는 반제품 형태의 소프트웨어 시스템

 

- 선행 사업자의 기술에 의존하지 않은 표준화된 개발 기반으로 인해 사업자 종속성이 해소됨

 

- 프레임워크의 주요 기능에는 예외 처리, 트랜잭션 처리, 메모리 공유, 데이터 소스 관리, 서비스 관리, 쿼리 서비스, 로깅 서비스, 사용자 인증 서비스 등이 있음

 

프레임워크 종류

 

스프링 프레임워크(Spring Framework) : 자바 플랫폼을 위한 오픈 소스 경량형 애플리케이션 프레임워크

 

전자정부 프레임워크 : 우리나라의 공공부문 정보화 사업 시 효율적인 정보 시스템의 구축을 지원하기 위해 필요한 기능 및 아키텍처를 제공하는 프레임워크

 

 닷넷 프레임워크(.NET Framework) : Windows 프로그램 개발 및 실행 환경을 제공하는 프레임워크로, Microsoft 사에서 통합 인터넷 전략을 위해 개발함