목록정보처리기사 정리 (29)
JUINTINATION
프로세스(Process)란? 프로세스는 일반적으로 프로세서(처리기, CPU)에 의해 처리되는 실행중인 프로그램을 의미하며 작업(Job), 태스크(Task)라고도 한다. 또한 다음과 같이 여러 형태로 정의할 수 있다. PCB를 가진 프로그램 실기억장치에 저장된 프로그램 프로세서가 할당되는 실체로서 디스패치가 가능한 단위 프로시저가 활동중인 것 비동기적 행위를 일으키는 주체 지정된 결과를 얻기 위한 일련의 계통적 동작 목적 또는 결과에 따라 발생되는 사건들의 과정 운영체제가 관리하는 실행 단위 PCB(Process Control Block, 프로세스 제어 블록) PCB는 운영체제가 프로세스에 대한 정보를 저장해 놓는 곳으로 각 프로세스가 생성될 때마다 고유의 PCB가 생성되고 프로세스가 완료되면 제거된다. ..
운영체제(OS)란? 운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 사용자와 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해주며 운영체제의 기능은 다음과 같다. 사용자와 시스템 간의 편리한 인터페이스 제공 시스템의 각종 하드웨어와 네트워크 관리 및 제어 시스템의 오류 검사 및 복구 자원을 효율적으로 관리하기 위한 스케줄링 기능 제공 데이터를 관리하고 데이터 및 자원의 공유 기능 제공 자원 보호 기능 제공 입출력에 대한 보조 기능 제공 가상 계산기 기능 제공 운영체제 성능 평가 기준 처리 능력(Throughput) 일정 ..
배치 프로그램이란? 배치 프로그램은 사용자와의 상호 작용 없이 여러 작업들을 미리 정해진 일련의 순서에 따라 일괄적으로 처리하는 것을 의미하며 배치 프로그램이 자동으로 수행되는 주기에 따라 정기 배치, 이벤트성 배치, On-Demand 배치로 구분된다. 정기 배치 일, 주, 월과 같이 정해진 기간에 정기적으로 수행된다. 이벤트성 배치 특정 조건을 설정해두고 조건이 충족될 때만 수행된다. On-Demand 배치 사용자 요청 시 수행된다. 배치 프로그램이 갖추어야 하는 필수 요소는 다음과 같다. 대용량 데이터 대량의 데이터를 가져오거나 전달하거나 계산하는 등의 처리가 가능해야 한다. 자동화 심각한 오류가 발생하는 상황을 제외하고는 사용자의 개입 없이 수행되어야 한다. 견고성 잘못된 데이터나 데이터 중복 등의..
SQL 테스트 SQL 테스트는 SQL이 작성 의도에 맞게 원하는 기능을 수행하는지 검증하는 과정이다. 단문 SQL은 SQL 코드를 직접 실행한 후 결과를 확인하는 것으로 간단히 테스트가 가능하다. 절차형 SQL은 테스트 전에 생성을 통해 구문 오류(Syntax Error)나 참조 오류 여부를 확인한다. 정상적으로 생성된 절차형 SQL은 디버깅을 통해 로직을 검증하고 결과를 통해 최종적으로 확인한다. 단문 SQL 테스트 단문 SQL 테스트는 DDL, DML, DCL이 포함되어 있는 SQL과 TCL(트랜잭션을 제어하는 COMMIT, ROLLBACK, SAVEPOINT 명령)을 테스트하는 것으로 직접 실행하여 결과물을 확인한다. DESCRIBE 또는 DESC [개체명] 명령어를 이용하면 DDL로 작성된 테이블..
DBMS 접속 DBMS는 데이터베이스 관리 시스템은 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합으로 사용자는 DBMS에 접근하기 위해 API 또는 API의 사용을 편리하기 도와주는 프레임워크 등을 사용한다. 응용 시스템은 사용자로부터 매개 변수를 전달받아 SQL을 실행하고 DBMS로부터 전달받은 결과를 사용자에게 전달하는 매개체 역할을 수행한다. 인터넷을 통해 구동되는 웹 응용 프로그램은 웹 응용 시스템을 통해 DBMS에 접근한다. 웹 응용 시스템은 웹 서버와 웹 애플리케이션 서버(WAS)로 구성되며 서비스 규모가 작은 경우 웹 서버와 웹 애플리케이션 서버를 통합하여 하나의 서버만으로 운용할 수 있다. 웹 응용 시스템의 구조는 아래와 같다. 사용자는 웹 서..
트랜잭션(Transaction)이란? 트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트랜잭션은 데이터베이스 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위로 사용된다. 트랜잭션은 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위로 사용된다. 트랜잭션의 특성 다음은 데이터의 무결성(Integrity)을 보장하기 위해 DBMS의 트랜잭션이 가져야 할 특성이다. Atomicity(원자성) 트랜잭션의 연산은 데이터베이스에 모두 반영되도록 Commit 되거나 전형 반영되지 않도록 Rollback 되어야 한다. 트랜잭션 내의 모든 명령은 반드시 수행되..