분류 전체보기 179

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 161. ⭐ 인터넷

TCP/IP 프로토콜을 기반으로 하여 전 세계 컴퓨터와 네트워트들이 연결된 광범위한 컴퓨터 통신망미 국방성 ARPANET에서 시작유닉스 운형체제 기반시간과 장소에 구애받지 않고 정보 교환컴퓨터는 고유한 IP 주소를 갖음네트워크를 서로 연결하기 위해 브리지, 라우터, 게이트웨이가 사용백본(Backbone)다른 네트워크 또는 같은 네트워크를 연결하여 중추적 역할을 하는 네트워크보통 인터넷의 주가 되는 기간망1. ⭐ IP 주소 (Internet Protocol Address)인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 고유한 주소숫자 8비트씩 4부분, 총 32비트로 구성 Class A : 국가나 대형 통신망에 사용(0~127)Class B : 중대형 통신망에 사용(128~191)Class C : 소규모 ..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 157. 스케줄링 ~ 158. ⭐ 주요 스케줄링 알고리즘

157. 스케줄링프로세스가 생성되어 실행될 때 필요한 시스템의 여러 자원을 해당 프로세스에게 할당하는 작업프로세스가 생성되어 완료될 때까지 프로세스는 여러 종류의 스케줄링 과정을 거침1) 장기 스케줄링 = 작업 스케줄링(Job Scheduling), 상위 스케줄링어떤 프로세스가 시스템의 자원을 차지할 수 있도록 할 것인가 결정하여 준비상태 큐로 보내는 작업작업 스케줄러에 의해 수행됨2) 중기 스케줄링어떤 프로세스들이 CPU를 할당받을 것인지 결정하는 작업CPU를 할당받으려는 프로세스가 많을 경우 프로세스를 일시 보류시킨 후 활성화해서 일시적으로 부하 조절3) 단기 스케줄링 = 프로세서 스케줄링(Processor Scheduling), 하위 스케줄링프로세스가 실행되기 위해 CPU를 할당받는 시기와 특정 프..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 156. ⭐ 프로세스 (Process)의 개요

1. 프로세스의 정의프로세서(처리기, CPU)에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미작업(Job), 태스크(Task)라고 함PCB를 가진 프로그램실기억장치에 저장된 프로그램프로세서가 할당되는 실체로서, 디스패치가 가능한 단위프로시저가 활동중인 것비동기적 행위를 일으키는 주체지정된 결과를 얻기 위한 일련의 계통적 동작목적 또는 결과에 따라 발생되는 사건들의 과정운영체제가 관리하는 실행단위 2. ⭐ PCB (Process Control Block, 프로세스 제어 블록)운영체제가 프로세스에 대한 중요한 정보를 저장해 놓는 곳Task Control Block, Job Control Block각 프로세스가 생성될 때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 155. ⭐ 가상기억장치 기타 관리 사항

1. ⭐ 페이지 크기1) 페이지 크기가 작을 경우페이지 단편화 감소한 개의 페이지를 주기억장치로 이동하는 시간이 줄어듦불필요한 내용이 주기억장치에 적재될 확률이 적으므로 효율적인 워킹 셋을 유지Locality에 더 일치할 수 있기 때문에 기억장치 효율이 높아짐페이지 정보를 갖는 페이지 맵 테이블의 크기가 커지고, 매핑 속도가 늦어짐디스크 접근 횟수가 많아져서 전체적인 입 · 출력 시간이 늘어남2) 페이지 크기가 클 경우페이지 정보를 갖는 페이지 맵 테이블의 크기가 작아지고, 매핑 속도가 빨라짐디스크 접근 횟수가 줄어들고 전체적인 입 · 출력 효율성이 증가페이지 단편화 증가한 개의 페이지를 주기억장치로 이동하는 시간이 늘어남프로세스(프로그램) 수행에 불필요한 내용까지도 주기억장치에 적재될 수 있음 2. ⭐..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 154. ⭐ 가상기억장치 구현 기법 / 페이지 교체 알고리즘

1. 가상기억장치의 개요보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 것용량이 작은 주기억장치를 마치 큰 용량을 가진 것처럼 사용하는 기법프로그램을 여러 개의 작은 블록 단위로 나누어서 가상기억장치에 보관해 놓고, 프로그램 실행 시 요구되는 블록만 주기억장치에 불연속적으로 할당주기억장치의 용량보다 큰 프로그램을 실행하기 위해 사용주기억장치의 이용률과 다중 프로그래밍 효율을 높일 수 있음가상기억장치의 주소를 주기억장치의 주소로 바꾸는 주소 변환 작업 필요논리적인 가상주소를 물리적인 실기억주소로 변환하는 것주소 사상, 주소매핑불록단위로 나누어 사용하므로 연속 할당 방식에서 발생할 수 있는 단편화를 해결2. ⭐ 페이징(Paging) 기법가장기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 153. 주기억장치 할당 기법

프로그램이나 데이터를 실행시키기 위해 주기억장치에 어떻게 할당할 것인지⭐ 연속 할당 기법프로그램을 주기억장치에 연속으로 할당하는 기법단일 분할 할당 기법 : 오버레이, 스와핑다중 분할 할당 기법 : 고정 분할 할당 기법, 동적 분할 할당 기법⭐ 분산 할당 기법프로그램을 특정 단위의 조각으로 나누어 주기억장치 내에 분산하여 할당하는 기법페이징 기법, 세그멘테이션 기법1. ⭐ 단일 분할 할당 기법주기억장치를 운영체제 영역과 사용자 영역으로 나누어 한 순간에는 오직 한 명의 사용자만이 주기억장치의 사용자 영역을 사용하는 기법가장 단순한 기법초기 운영체제에서 많이 사용하던 기법운영체제를 보호하고, 프로그램이 사용자 영역만을 사용하기 위해 운영체제 영역과 사용자 영역을 구분하는 경계 레지스터(Boundary Re..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 152. ⭐ 기억장치 관리의 개요

계층 구조에서 상위의 기억장치일수록 접근 속도와 접근 시간이 빠르지만, 기억 용량이 적고 고가주기억장치는 각기 자신의 주소를 갖는 워드 또는 바이트들로 구성되어 있으며, 주소를 이용해 액세스 함레지스터, 캐시 기억장치, 주기억장치의 프로그램과 데이터는 CPU가 직접 액세스 가능하나, 보조기억장치에 있는 프로그램이나 데이터는 직접 엑세스 불가보조기억장치에 있는 데이터는 주기억장치에 적재된 후 CPU에 의해 액세스 됨1. ⭐ 기억장치 관리 전략의 개요1) 반입 (Fetch) 전략보조기억장치에 보관중인 프로그램이나 데이터를 언제 주기억장치로 적재할 것인지 결정하는 전략요구 반입(Demand Fetch) : 실행 중인 프로그램이 특정 프로그램이나 데이터 등의 참조를 요구할 때 적재예상 반입(Anticipator..

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 149. 운영체제 (OS; Operating System)의 개념 ~ 151. ⭐ UNIX / LINUX / MacOS

149. 운영체제 (OS; Operating System)의 개념1. 운영체제의 정의컴퓨터 시스템의 자원(CPU, 주기억장치, 보조기억장치, 프린터, 파일 및 정보 등)들을 효율적으로 관리사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임사용자와 컨퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일정다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경 제공 2. 운영체제 목적목적설명처리 능력(throughput)일정 시간 내에 시스템이 처리하는 일의 양반환 시간(Turn Around Time)시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간사용 가능도(Acailability)시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도신뢰도..

[4과목 프로그래밍 언어 활용] 프로그래밍 언어 활용 - 148. 프로토타입

함수 원형(Function Prototype)이라는 의미컴파일러에게 사용될 함수에 대한 정보를 미리 알리는 것함수가 호출되지 전에 함수가 미리 정의되는 경우 프로토타입을 정의하지 않아도 됨본문이 없다는 점을 제외하고 함수 정의와 형태가 동일정의된 반환 형식은 함수 정의에 지정된 반환 형식과 반드시 일치해야함1. C언어에서의 프로토타입 선언main() 함수 바깥쪽에 선언💡 main() 함수 시작되기 전에 함수를 정의한 경우 프로토타입을 선언하지 않아도 됨 int func(int i, int j){ func 함수코드;}main(){ 메인 함수 코드;} 💡 main() 함수 시작된 후에 함수를 정의한 경우에는 main() 함수 전에 사용될 함수에 대해 프로토타입 선업 int func(int i..

[4과목 프로그래밍 언어 활용] 프로그래밍 언어 활용 - 147. ⭐ 예외처리 (Exception Handling)

프로그램의 정상적인 실행을 방해하는 조건이나 상태예외가 발생했을 때 프로그래머가 해당 문제에 대비해 작성해 놓은 처리 루틴을 수행하도록 하는 것프로그램을 종료시키거나 로그를 남기도록 하는 것C++, Ada, JAVA, JS는 예외처리 기능이 내장되어 있으며, 그 외의 언어에서는 필요한 경우 조건문을 이용해 예외처리 루팅을 작성예외 원인은 컴퓨터 하드웨어 문제, 운영체제의 설정 실수, 라이브러리 손상, 사용자의 입력 실수, 받아들일 수 없는 연산, 할당하지 못하는 기억장치 접근1. JAVA 예외처리잘못된 동작이나 결과에 영향을 줄 수 있는 예외를 객체로 취급java.lang 패키지에서 제공try ~ catch문 이용catch 블록에서 선언한 변수는 해당 catch 블록에서만 유효try ~ catch 안에 ..