세마포어, 뮤텍스, critical section

Linux 2018.06.15 11:48 Posted by smileyoon

세마포어란?

공유된 자원에 여러 개의 프로세스가 동시에 접근하면 문제가 발생합니다. 공유된 자원 속 하나의 데이터는 한 번에 하나의 프로세스만 접근할 수 있도록 제한해 두어야 하는데, 이를 위하여 고안된 것이 세마포어입니다.

 

(세마포어와 뮤텍스의 차이)

세마포어(Semaphore) : 공유된 자원의 데이터를 여러 프로세스가 접근하는 것을 막는 것

뮤텍스(Mutex) : 공유된 자원의 데이터를 여러 쓰레드가 접근하는 것을 막는 것

 

** Critical section 이란 ?

OS에서 Critical Section은 아주 중요한 부분이다.

- 다중 프로그래밍 운영체제에서 여러 프로세스가 데이타를 공유하면서 수행될 때 각 프로세스에서 공유 데이타를 액세스하는 프로그램 코드 부분을 가리킨다.

공유 데이타를 여러 프로세스가 동시에 액세스하면 시간적인 차이 때문에 잘못된 결과를 만들어 낼 수 있기 때문에 한 프로세스가 위험 부분을 수행하고 있을 때, 즉 공유 데이타를 액세스하고 있을 때는 다른 프로세스들은 절대로 그 데이타를 액세스하지 못해야 한다.

출처: http://jwprogramming.tistory.com/13 [개발자를 꿈꾸는 프로그래머]


시간 계산

Database/Oracle 2018.03.12 10:09 Posted by smileyoon
등록된 작업 수행 시 Start_date과 End_date를 확인할 수 있습니다
단순하게 (End_date-Start_date)하면 될꺼라고 생각이 들지만 그렇지 않습니다.

수행된 시간을 확인하기 위해서 아래와 같이 연산을 통해 초, 분, 시간 차이를 확인할 수 있습니다.

-- 초 차이 확인
SELECT ROUND((end_date-start_date)*24*60*60) FROM TBL;
 
 
-- 분 차이 확인
SELECT ROUND((end_date-start_date)*24*60) FROM TBL;
 
 
-- 시간 차이 확인
SELECT ROUND((end_date-start_date)*24) FROM TBL;


'Database > Oracle' 카테고리의 다른 글

시간 계산  (0) 2018.03.12
시간 다루기 / TRUNC, NEXT_DAY, SYSDATE 등등  (0) 2017.03.17

OS설치 후 바로 DB설치 -> Hostname 변경 후 이런저런 작업을 하고 있었습니다


이런 히스토리를 모르고 담당자가 계정 속성을 변경하려고 하였더니

'서버 수준의 URN 필터가 잘못되었습니다 ~~~~' 라는 에러 메시지가 발생했습니다. 


[원인]

메타데이터가 이전 Old_Hoatname으로 저장되어져 있었기 때문입니다.

sp_dropserver, sp_addserver 프로시저를 통해 메타데이터 변경해 주시기 바랍니다.


주의

기본 인스턴스일때와 명명된 인스턴스일때 약간의 구문 차이가 있으니 참고해 주시기 바랍니다.

[참고사이트]

SQL Server의 독립 실행형 인스턴스를 호스팅하는 컴퓨터 이름 바꾸기

https://docs.microsoft.com/ko-kr/sql/database-engine/install-windows/rename-a-computer-that-hosts-a-stand-alone-instance-of-sql-server#after-the-renaming-operation


'Database > Microsoft SQL Server' 카테고리의 다른 글

계정 속성 변경 실패 / URN  (0) 2018.02.08
SA 패스워드 초기화  (0) 2015.06.15
로그인 감사 설정 변경  (0) 2015.05.18
Pssdiag 수집 방법  (0) 2015.03.13
시점복원 / 로그체인  (0) 2015.03.13
SQL Server Native Client  (0) 2014.09.30