CS 3

Semaphore Vs Mutex

Mutex Mutual Exclusion의 합성어로 공유된 자원의 데이터나 임계영역(critical Section) 같은 곳에 스레드들의 서로 겹치지 않거나 하나의 프로세스나 스레드가 접근하는 것을 막는다. 동기화 대상이 1개 다른 스레드들은 뮤텍스의 lock을 가지기 위해 대기하고 락을 해제하는 스레드가 있을 때까지 접근하지 못한다. Key 기반으로 한 상호배제 기법이다. 다중 프로세스들의 공유 리소스에 접근을 조율하기 위해 동기화(Sync) 또는 락(Lock)을 사용 그림을 보면 쉽게 이해할 수 있다. 카운터에 있는 화장실 키를 누군가가 가지고 화장실을 이용 중인 경우 다른 사람은 해당 화장실을 이용할 수 없다. 하지만 이용을 마친 누군가가 Key를 카운터에 다시 가져다 놓으면 다른 사람들이 화장실을..

CS/OS 2024.01.09

JOIN

중복 데이터를 피하기 위해서 데이터를 쪼개 여러 테이블로 나눠서 저장된 관계형 데이터베이스에서 분리된 데이터를 원하는 결과로 도출하기 위해 여러 테이블을 조합하기 위해 컬럼 기준으로 행을 합쳐주는 연산 □ JOIN 예시 SELECT ... FROM R, S WHERE R.A S.B; 다음과 같은 SELECT문은 릴레이션 R의 Attribute A와 릴레이션 S의 Attribute B를 비교연산자를 통해 조건을 만족하는 튜플들의 집합을 구한다. R.A S.B; 인 경우 R.A와 S.B는 주로 기본 키와 외래 키의 관계를 갖는다. 특징 - N개의 릴레이션을 연관시키기 위해서는 N-1개의 JOIN 조건이 필요하다. - JOIN 조건을 생략하거나 틀리게 표현한 경우 카티션 곱이 생성된다. 더보기 SELECT *..

CS/DataBase 2024.01.02

Key

데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성) 최악의 경우 모든 Attribute들을 사용하면 튜플을 고유하게 식별할 수 있는데 다음과 같은 이유로 최소한의 Attribute로 이루어진 키에 관심을 갖게 된다. 1. 불필요하게 중복되는 Attribute가 많아지면 데이터 저장 공간이 낭비되고, 쿼리 성능이 저하될 수 있다. 릴레이션 A 신용카드번호 이름 주민등록번호 주소 1 A XXXX-XXXX 서울특별시... 2 B YYYY-YYYY 인천광역시... 릴레이션 B 신용카드번호 이름 주민등록번호 주소 사용금액 1 A XXXX-XXXX 서울특별시... 1,000,000 2 B YYYY-YYYY 인천광역시... 60..

CS/DataBase 2024.01.01