Computer Science17 DDL, DCL, DML, TCL 1. DDL (Data Definition Language) 데이터 정의어 종류 역할 CREATE 데이터베이스, 테이블 등을 생성하는 역할을 합니다. ALTER 테이블을 수정하는 역할을 합니다. DROP 데이터베이스, 테이블을 삭제하는 역할을 합니다. TRUNCATE 테이블을 초기화 시키는 역할을 합니다. RENAME 테이블 이름을 변경합니다. 2. DCL (Data Control Language) 데이터 제어어 종류 역할 GRANT 특정 데이터베이스 사용자에게 특정 작업에 대한 수행 권한을 부여 합니다. REVOKE 특정 데이터베이스 사용자에게 특정 작업에 대한 수행 권한을 박탈, 회수 합니다. 3. DML (Data Manipulation Language) 데이터 조작어 종류 역할 SELECT 데이터.. 2021. 5. 31. 데드락(Deadlock)이란? 데드락의 발생조건과 해결방안 1. Deadlock데드락이란? 운영체제에서 데드락(교착상태)이란, 시스템 자원에 대한 요구가 뒤엉킨 상태입니다. 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황 2. 발생조건 상호 배제 한 번에 프로세스 하나만 해당 자원을 사용할 수 있다. 사용 중인 자원을 다른 프로세스가 사용하려면 요청한 자원이 해제될 때까지 기다려야 한다. 점유 대기 자원을 최소한 하나 보유하고, 다른 프로세스에 할당된 자원을 점유하기 위해 대기하는 프로세스가 존재해야 한다. 비선점 이미 할당된 자원을 강제로 빼앗을 수 없다(비선점). 순환 대기 대기 프로세스의 집합이 순환 형태로 자원을 대기하고 있어야 한다. 3. 해결방안 데드락이 발생하지 않도록 예방(prevention) 하.. 2021. 5. 31. 프로세스 간 데이터 공유(IPC), 스레드 간 데이터 공유 1. 프로세스 간 통신 IPC(Inter-process Communication) Cooperating processes require an IPC mechanism - that will allow them to exchange data - that is, send data to and receeive data from each other. A. 공유 메모리 shared memory 커널의 통신 서비스를 이용해 협력하는 프로세스들 사이에 공유되는 메모리 영역(shared memory)을 구축하는 방법이다. 메모리를 직접 접근하기 때문에 속도가 빠르고 사용이 편리하다. 문제점 : 프로세스A가 공유 메모리에 데이터 전달해도 프로세스B가 그것을 알 수 없다 => 별도의 동기화 기술이 필요하다. B. messa.. 2021. 5. 30. PCB(Process Control Block) 프로세스 제어 블록이란? 1. PCB(Process control Block) PCB는 운영 체제가 프로세스를 표현한 것이다 특정한 프로세스를 관리할 필요가 있는 정보를 포함하는 운영 체제 커널의 자료 구조이다. 각 프로세스가 생성될 때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB는 제거됩니다. 2. 포함 정보 프로세스 식별자(Process ID) 프로세스 상태(Process State): 생성(create), 준비(ready), 실행(running), 대기(waiting), 완료(terminated) 상태가 있다. - 유예준비상태suspended ready, 유예대기상태suspended wait 는 스택이 아닌 disk에 저장된다. 프로그램 계수기(Program Counter): 프로그램 계수기는 이 프로세스가 다.. 2021. 5. 30. 문맥교환(context switching)과 오버헤드(overhead) 1. 문맥교환 Context Switching 하나의 프로세스가 CPU를 사용 중인 상태에서 다른 프로세스가 CPU를 사용하도록 하기 위해, 이전의 프로세스의 상태(문맥)를 보관하고 새로운 프로세스의 상태를 적재하는 작업 프로세스의 문맥(context)은 PCB에 저장된다. 인터럽트(interrupt)가 발생하면 시스템은 현재 수행 중인 프로세스의 문맥을 저장하고, 이후 해당 프로세스가 재개될 때 복원한다. 즉, 문맥교환이란 1.CPU 코어를 다른 프로세스로 교환 2. 현재 프로세스의 상태를 저장 3. 다른 프로세스의 상태를 복원하는 작업(task)를 말한다. 문맥교환시점 멀티태스킹 인터럽트 핸들링 사용자 모드와 커널 모드 간의 전환 2. 오버헤드 (Overhead) 어떤 처리를 하기 위해 들어가는 간접.. 2021. 5. 30. 논리게이트 AND OR NAND XOR NOR XNOR NOT buffer 정리 1. AND(논리곱) A B A AND B 0 0 0 0 1 0 1 0 0 1 1 1 2. OR(논리합) A B A OR B 0 0 0 0 1 1 1 0 1 1 1 1 3. NOT(논리부정) A NOT A 0 1 1 0 4. NAND(부정논리곱): AND 연산 결과를 NOT 연산 A B A NAND B 0 0 1 0 1 1 1 0 1 1 1 0 5. NOR(부정논리합): OR 연산 결과를 NOT 연산 A B A NOR B 0 0 1 0 1 0 1 0 0 1 1 0 6. XOR(배타적논리합): 서로 반대의 값을 가지면 참 A B A XOR B 0 0 0 0 1 1 1 0 1 1 1 0 7. XNOR(배타적부정논리합): XOR연산의 결과를 NOT 연산 A B A XNOR B 0 0 1 0 1 0 1 0 0 .. 2021. 5. 30. 이전 1 2 3 다음