분류 전체보기(39)
-
OSI 7 계층 모형::네트워크
1. OSI 참조 모형(Open Systems Interconnection Reference Model) 국제표준화기구(ISO : International Organization for Standardization)에서 개발한 모델로 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것입니다. 일반적으로 OSI 7 계층 모형이라고 합니다. 2. 7 계층으로 나눈 이유 통신이 일어나는 과정에서 단계별 흐름과 문제를 쉽게 파악할 수 있기 때문입니다. 사람들이 이해하기 쉽게 흐름을 한눈에 알아볼 수 있습니다. 7단계 중 특정한 계층에 이상이 생긴다면 다른 단계의 장비와 소프트웨어를 만지지 않고, 이상이 생긴 단계만 다루면 되기 때문에 효율성을 높일 수 있습니다. 하지만, 모든 네트워크 기술이 O..
2020.06.26 -
정규화(Normalization)::데이터베이스
1. 정규화 정의 한 테이블에 여러 엔티티를 넣다 보면 중복된 정보로 인해 이상 현상이 발생하게 됩니다. 이러한 문제를 해결하기 위해 정규화 과정을 거칩니다. 즉, 관계형 데이터베이스에서 중복을 최소화하기 위해 데이터를 구조화하는 작업입니다. 2. 이상 현상(Anomaly) 삽입 이상(Insertion Anomaly) : 새 데이터를 삽입할 때, 불필요한 데이터를 함께 삽입해야 하는 현상 삭제 이상(Deletion Anomaly) : 튜플을 삭제할 때, 필요한 데이터까지 삭제되는 현상 갱신 이상(Modification Anomaly) : 반복된 데이터 중에 일부를 수정할 때, 데이터가 불일치되는 현상 3. 정규화 과정 각 정규화 단계는 이전 정규화 단계를 만족해야 합니다. ex) 제3 정규화를 만족하기 ..
2020.06.26 -
DBMS(데이터베이스 관리 시스템)::데이터베이스
1. DBMS(DataBase Management System) 데이터베이스를 조작하는 별도의 소프트웨어입니다. 데이터베이스를 관리하고, 응용 프로그램들이 데이터베이스에 접근할 수 있는 인터페이스를 제공합니다. 데이터베이스를 구축하는 틀을 제공하고, 효율적으로 데이터를 검색하고 저장하는 기능을 제공합니다. 장애에 대한 복구 기능, 사용자 권한에 따른 보안성 유지 기능 등을 제공합니다. 즉, 데이터베이스 내의 정보를 구성하는 컴퓨터 프로그램의 집합으로서 무결성을 보장하기 위해 데이터의 중복을 제거하고 관리하는 소프트웨어 체계입니다. 2. 데이터의 무결성 데이터의 무결성은 데이터의 정확성, 일관성, 유효성이 유지되는 것을 말합니다. 데이터의 무결성을 유지하는 것은 DBMS의 중요한 기능이며, 주로 데이터에 ..
2020.06.26 -
CPU 프로세스 스케줄링::운영체제
1. 선점 스케줄링 CPU가 어떤 프로세스에 의해 점유 중일 때, 우선순위가 높은 프로세스가 CPU를 차지할 수 있습니다. 우선 순위가 높은 프로세스를 빠르게 처리해야 할 경우에 유용하지만, 오버헤드가 발생하여 처리시간을 예측하기 힘듭니다. SRT(Shortest Remaining Time) 스케줄링 짧은 시간 순서대로 프로세스를 수행합니다. 남은 처리 시간이 더 짧은 프로세스가 Ready 큐에 들어오면 그 프로세스가 바로 선점됩니다. 라운드 로빈(Round Robin) 스케줄링 각 프로세스는 같은 크기의 CPU 시간을 할당받고 선입선출(FIFO)에 의해 선점됩니다. 할당시간이 너무 크면 선입선출과 다를 바 없어지고, 너무 작으면 오버헤드가 너무 커집니다. 다단계 큐(Multi-level Queue) 스..
2020.06.25 -
트랜잭션(Transaction)::데이터베이스
1. 트랜잭션의 정의 데이터베이스의 상태를 변환시키는 하나의 논리적인 작업의 단위를 구성하는 연산들의 집합입니다. 하나의 트랜잭션은 Commit 되거나 Rollback 됩니다. Commit - 하나의 트랜잭션에 대한 작업이 성공적으로 끝나 데이터베이스가 다시 일관된 상태에 있을 때, 이 트랜잭션이 행한 갱신 연산이 완료된 것을 트랜잭션 관리자에게 알려주는 연산입니다. Rollback - 하나의 트랜잭션 처리가 비정상적으로 종료되어 데이터베이스의 일관성을 깨뜨렸을 때, 이 트랜잭션의 일부가 정상적으로 처리되었더라도 이 트랜잭션이 행한 모든 연산을 취소(Undo)하는 연산입니다. - Rollback 시 해당 트랜잭션을 재시작하거나 폐기합니다. 2. 트랜잭션의 성질(ACID) Atomicity(원자성) : 트..
2020.06.24 -
[프로그래머스] 자물쇠와 열쇠::알고리즘
열쇠를 회전하고, 이동시켜 자물쇠를 열 수 있는지 확인하는 알고리즘 열쇠의 크기(M)는 자물쇠의 크기(N) 보다 작을 수 있고, 열쇠가 자물쇠의 범위를 벗어나도 맞물리기만 하면 되므로 M - 1 + N + M - 1 = N + (M - 1) * 2 크기의 이차원 배열을 새로 만들어 줍니다. 가운데 N 자리에 lock을 복사합니다. 이차원 배열을 계속해서 복사하고, 복사된 이차원 배열에 열쇠가 한 칸씩 이동하면서 이차원 배열과 열쇠를 더해 lock 자리가 있는 곳만 모두 1인지 확인하여 true를 반환합니다. Java 코드 public class Solution_자물쇠와열쇠 { public static boolean solution(int[][] key, int[][] lock) { int M = key...
2020.06.19