메모리 관리
개념 관리 기법 메인 메모리는 운영체제를 위한 영역과 사용자 프로그램을 위한 영역으로 나뉜다. 다중 프로그래밍 시스템에서는 운영체제가 이 사용자 영역을 동적으로 세분화해, 여러 프로세스가 동시에 상주할 수 있도록 관리한다. 반입 정책 반입 정책은 메인 메모리에 적재할 다음 프로세스의 시점을 결정하는 방법이다. 요구 반입 기법은 운영체제나 시스템 프로그램, 사용자 프로그램의 참조 요구에 따라 메인 메모리에 적재하는 방식으로 오랫동안 쓰여왔다. 예상 반입 기법은 시스템의 요구를 미리 예측해 메모리에 선제적으로 적재하는 방식으로, 비교적 최근에 쓰이기 시작했다. 요청받은 페이지 외에 다른 페이지도 함께 들여오며, 탐색 시간과 회전 지연 시간을 갖는 보조기억장치의 특성을 고려한 정책이다. 배치 정책 배치 정책은 디스크에서 반입한 프로세스를 메인 메모리의 어느 위치에 저장할지 결정하는 방법으로, 최초 적합, 최적 적합, 최악 적합 등이 있다. 대치 정책 대치 정책은 재배치 기법의 하나로...
병행 프로세스
병행 프로세스 병행 프로세스는 독립적으로 작업을 수행하기도 하고, 다른 프로세스와 협력해 특정 기능을 수행하기도 한다. 이 협력 과정에서는 프로세스 간 통신이 필요하다. 비동기적 병행 프로세스 여러 프로세스가 통신할 때 서로 동기화되어야 하는 프로세스를 비동기적 병행 프로세스라 부른다. 상호작용 프로세스들이 상호작용하는 이유는 제한된 자원을 공유하기 위해서다. 이렇게 상호작용하는 프로세스는 정해진 순서에 맞게 실행되도록 동기화되어야 한다. 병행성 병행성은 다수의 프로세서를 이용해 작업을 수행하는 방식으로, 다중 처리 시스템, 분산 처리 환경, 다중 프로그래밍 운영체제에서 특히 중요하다. 시스템의 신뢰도를 높이고 처리 속도를 개선해 전체 처리 능력을 끌어올리는 데 핵심적인 역할을 한다. 다중 처리 시스템에서는 각 프로세서가 갖는 오버헤드를 줄이면서 프로세서의 유효성을 높이는 것이 목표이며, 이를 위해 여러 개의 명령어를 세분화해 동시에 처리할 수 있도록 프로세서들을 연결하고 그 ...
JDBC (Java Database Connectivity)
JDBC, 넌 누군데? JDBC는 자바 언어로 다양한 종류의 관계형 데이터베이스에 접속하고 명령문을 수행해 처리할 때 사용하는 표준 API다. 자바 표준 에디션이 지원하는 기술로, 접속하려는 DBMS 서버에 따라 별도의 드라이버가 필요하다. 간단한 구성 JDBC는 네 단계를 거쳐 동작한다. JDBC Interface: Java SE가 제공하는 java.sql 패키지다. JDBC Driver: java.sql 인터페이스들을 상속해 메소드의 몸체(body)를 구현한 클래스들이다. JDBC 프로그램을 작성하려면 먼저 이 드라이버가 준비되어 있어야 한다. JDBC Driver loading: Class.forName("oracle.jdbc.driver.OracleDriver");처럼 드라이버 클래스를 로딩한다. DBMS Server 접근: 드라이버 준비가 끝나면 java.sql 패키지의 DriverManager 클래스가 제공하는 getConnection()으로 DB...
의존성 주입 (DI)
Dependency Inject 개발자가 객체간 의존성을 직접 호출하는 대신 스프링 컨테이너에서 생성하여 넣어주는 방식 인터페이스를 사이에 두어 클래스 레벨에서 의존관계가 고정되지 않고, 런타임 시 관계를 동적으로 주입하여 유연성을 확보하고 결합도를 낮춘다. 의존성 주입에 사용되는 Annotation 에는 @Autowired, @Inject, @Resource가 있다. 12345678910111213public class Controller { private Service service = new Service(); // 직접 호출 //만약, Service 의 객체를 Service2() 로 교체해야 한다면, //Service 를 의존하는 모든 클래스를 수정해주어야 한다. //해당 문제를 해결하기 위해 DI 를 사용한다. void test() { service.test(); } ...
정보보안
개요 2011년 농협 전산망 마비 사태 2011년 4월 12일 오후 5시 20분경 전국 농협 전산망에 갑자기 오류가 생겨 은행 업무가 전면 중지됐다. 다음 날인 4월 13일 오후 6시 기준으로도 창구에서 일부 업무만 처리할 수 있었고, 이 사고로 자동이체와 각종 금융거래에 차질을 겪은 고객 수가 크게 늘었다. 이 사건은 정보보안의 중요성을 다시 일깨워주는 계기가 되었다. 개념 정보보안은 정보를 수집하고 가공하고 저장한 뒤 송수신하는 전 과정에서 발생할 수 있는 불법 훼손, 변조, 유출을 막기 위한 관리적·기술적 방법을 말한다. 목표 정보보안은 세 가지 목표를 지향한다. 기밀성은 허가되지 않은 사용자나 객체가 정보의 내용을 알 수 없도록 비밀을 지키는 것이고, 무결성은 허가되지 않은 사용자나 객체가 정보를 함부로 수정할 수 없게 하는 것이며, 가용성은 허가된 사용자나 객체가 언제든 정보에 접근해 사용할 수 있게 하는 것이다. 공격 형태 정보보안을 위협하는 공격은 가로막기, 가로채...

