728x90
반응형

POSIX 4

IPC 종류와 특징

안녕하세요. 앤디라이언입니다. 오늘은 Linux시스템에서 사용하는 IPC에 대해 알아보겠습니다. IPC ( Inter Process Communication )는 내부 프로세스간 통신을 의미합니다. 프로세스는 독립적인 수행을 하기때문에 프로세스간의 통신을 할 수 없는 단점이 있습니다. 즉, 독립되어 있기 때문에 별도의 설비가 없이는 서로간의 통신이 불가능 하다는 의미입니다. 이러한 IPC는 System V IPC와 POSIX IPC로 나뉩니다. System V IPC는 오래된 버전이며 오랜 역사를 가진만큼 이기종간 코드 호환성을 확실히 보장해 줍니다. 하지만 API도 오래되었으며, 더 이상 업데이트가 되지 않는 단점이 있습니다. 반면, POSIX IPC는 직관적인 API로 구성되어 있으며, 상대적으로 사..

개발 이야기 2020.05.08

POSIX pthread_mutex

안녕하세요. 앤디라이언입니다. 오늘은 mutex에 대해 알아볼까 합니다. mutex mutex는 여러 개의 쓰레드가 공유하는 자원에 대한 점유권을 가지게 하는 것으로 많이 비유하는 표현이 화장실 예가 있습니다. 화장실에 A라는 사람이 열쇠를 가지고 들어갔다고 생각해보세요. 그럼 그 다음 사람은 열쇠도 없고 문이 잠겨있기 때문에 A라는 사람이 나올 때까지 대기하고 있다가 A라는 사람이 볼 일을 보고 나오면 B라는 사람이 들어갈 수 있습니다. mutex라는 영역이 바로 화장실에 비유됩니다. 여러 개의 쓰레드가 하나의 공유 자원을 가지고 작업을 하려고 할 때 점유한 A쓰레드가 있다면, A쓰레드가 작업을 완료하고 나올 때까지 나머지 쓰레드는 mutex영역에 들어갈 수 없습니다. 이와 비슷한 개념으로 크리티컬 섹..

개발 이야기 2020.05.07

POSIX C pthread

안녕하세요. 앤디라이언입니다. pthread는 posix thread를 줄여서 표현하며, 유닉스 계열 시스템에서 일반적으로 사용하는 thread 관련 표준 API입니다. 쓰레드를 생성하기 위해서는 pthread_create 메서드를 사용합니다. //Create pthread int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void*), void *arg); /*param *thread: 스레드 식별자 : 스레드가 성공적으로 생성되었을 때 생성된 스레드 식별을 위해 사용한다. *attr: 스레드의 특성을 지정하기 위해 사용, 기본 스레드 특성 사용하는 경우는 항상 NULL로 지정한다. start_..

개발 이야기 2020.05.07

POSIX C

안녕하세요. 앤디라이언입니다. POSIX라는 개념을 들어보신적 있으신가요? 그렇다면 당신은 Unix계열이나 Linux분야에서 개발을 해본 경험이 있으신 분일 겁니다. 윈도우 환경에서만 개발을 진행했다면 생소한 단어~ @.@? 그럼 한번 POSIX라는 개념이 무엇인지 알아볼까요? POSIX 란 무엇인가? POSIX (Potable Operating System Interface)의 약어로 서로 다른 운영체제의 공통 API를 정리하여 이식성이 높은 유닉스 응용프로그램을 개발하기 위한 목적으로 IEEE가 책정한 어플리케이션 인터페이스 규격입니다. X의 의미는 유닉스 호환 운영체제에 보통 X가 붙은 것으로부터 내려온 것입니다. POSIX Wiki 더보기 C POSIX 라이브러리는 C 표준 라이브러리 POSIX에..

개발 이야기 2020.05.07
728x90
반응형
SMALL