COMPUTER SCIENCE (18) 썸네일형 리스트형 스레드 스레드란 프로세스의 코드에 정의된 절차에 따라 cpu에 작업 요청을 하는 실행 단위이다. 스레드 관련 용어 멀티스레드 멀티스레드는 프로세스 내 작업을 여러 개의 스레드로 분할함으로써 작업의 부담을 줄이는 프로세스 운영 기법이다. 멀티태스킹 운영체제가 CPU에 작업을 줄 때 시간을 잘게 나누어 배분하는 기법이다. 이렇게 여러 스레드에 시간을 잘게 나누어 주는 시스템을 시분할 시스템(time sharing system)이라고 한다. 멀티프로세싱 CPU를 여러 개 사용하여 여러 개의 스레드를 동시에 처리하는 작업 환경을 말한다. CPU 멀티스레드 한 번에 하나씩 처리해야 하는 스레드를 파이프라인 기법을 이용하여 동시에 여러 스레드를 처리하도록 만든 병렬 처리 기법이다. 멀티스레드의 장단점 장점 프로세스 내 공.. 프로세스 제어 블록과 문맥 교환 프로세스 제어 블록 프로세스 제어 블록(Process Control Block)은 프로세스를 실행하는 데 필요한 정보를 보관하는 자료 구조 모든 프로세스는 고유의 프로세스 제어 블록을 가진다. 프로세스 제어 블록은 프로세스 생성 시 만들어져서 프로세스가 실행을 완료하면 폐기된다. 프로세스 제어 블록의 구성 포인터: 프로세스 제어 블록을 연결하여 준비 상태나 대기 상태의 큐를 구현할 때 포인터를 사용한다. 프로세스 상태: 생성, 준비, 실행, 대기, 보류 준비, 보류 대기 등이 있다. 이것은 프로세스의 현재 상태를 나타낸다. 프로그램 구분자(PID): 여러 프로세스를 구별하기 위해 사용한다. 프로그램 카운터: 다음에 실행될 명령어의 위치를 가리키는 값이다. 프로세스 우선순위: 프로세스의 중요도는 각각 다르.. 프로세스의 상태 프로세스에는 기본적으로 다섯 가지 상태가 있다. 이것을 활성 상태(ACTIVE STATUS)라고 한다. 1. 생성 상태(create status) 설명 작업 프로그램을 메모리에 가져와 실행 준비가 완료된 상태이다. 메모리 할당, 프로세스 제어 블록 생성 2. 준비 상태(ready status) 설명 작업 실행을 기다리는 모든 프로세스가 자기 차례를 기다리는 상태이다. 실행될 프로세스를 CPU 스케줄러가 선택한다. DISPATCH(PID): 준비상태의 프로세스를 실행상태의 프로세스로 만들어준다. 3. 실행 상태(running status) 설명 작업 선택된 프로세스가 타임 슬라이스를 얻어 CPU를 사용하는 상태이다. 프로세스 사이의 문맥 교환이 일어난다. TIMEOUT(PID): 실행상태의 프로세스를 준비.. 제약조건2 4.FOREIGN KEY '외래키'라고 많이 불리는 제약조건이다.테이블 간의 참조 데이터 무결성을 보장해준다. 참조 관계가 있는 테이블의 데이터 추가, 삭제,수정을 통제할 수 있다. 조건 : 참조 테이블이 먼저 생성되있어야함 외래키가 참조하는 컬럼은 참조하는 테이블의 기본키이어야함 여러 컬럼을 외래키로 할 경우, 참조하는 테이블의 기본키와 컬럼 개수 및 순서가 같아야 함. CREATE TABLE example5( col1 varchar(10) PRIMARY KEY ); CREATE TABLE example6( col4 varchar(10), col5 varchar(10), constraint fk_example6 FOREIGN KEY(col4) references example5(col1) ); 5.CH.. 제약조건1 1.NOT NULL 컬럼을 정의할 때 NOT NULL 제약조건을 명시하면 해당 컬럼에는 반드시 데이터를 입력해야만 한다. constraint는 별명을 지어줄 때 사용한다. CREATE TABLE exmapl1( col1 varchar(10), col2 varchar(10) constraint col2_notnull not null ); 2.UNIQUE 단어 뜻 그대로 해당 컬럼에 들어가는 값이 테이블 전체에서 유일해야 한다는 의미이다. 기본적으로 NOT NULL이 아니지만 NOT NULL을 넣어주면 사용 할 수 있다. CREATE TABLE example2( col1 varchar(10) unique, col2 varchar(10) unique not null, col3 varchar(10) constr.. GRANT,REVOKE 테이블에 DML 권한부여 방법 1 GRANT SELECT ON [TABLE] TO [USER_ID]; GRANT INSERT ON [TABLE] TO [USER_ID]; GRANT DELETE ON [TABLE] TO [USER_ID]; GRANT UPDATE ON [TABLE TO [USER_ID]; 방법 2 GRANT SELECT,INSERT,DELETE,UPDATE ON [TABLE] TO [USER_ID]; CREATE OR REPLACE SYNONYM [USER_ID].[TABLE] FOR [MASTER_ID].[TABLE] 테이블에 DML 권한 회수 방법 1 REVOKE SELECT ON [TABLE] FROM [USER_ID]; REVOKE INSERT ON [TABLE] FROM [USER.. DELETE DELETE FROM COMPANY_TABLE WHERE COMPANY_CODE = 1 COMPANY_TABLE테이블의 COMPANY_CODE =1을 삭제한다. UPDATE UPDATE COMPANY_TABLE SET COMPANY_NAME = '삼성전자' WHERE COMPANY_CODE = 1 COMPANY_NAME 1에 해당되는 값을 '삼성전자' 로 바꾼다. 이전 1 2 3 다음