코딩 도구/운영체제(10)
-
Pthread API를 활용한 여러 스레드 간 메모리 공유 및 동기화
Pthread API를 활용한 여러 스레드 간 메모리 공유 및 동기화https://www.youtube.com/watch?v=mfKPRdu3A_4이 영상은 Pthread API를 활용한 여러 스레드 간 메모리 공유 및 동기화에 대한 내용을 다루고 있습니다.스레드 간에 같은 메모리를 공유하면서 발생하는 문제를 설명하며, mutex lock을 활용한 스레드 동기화의 필요성과 작동 방식을 다룹니다.각 스레드는 전함수를 순차적으로 실행해야 하는 부분을 지정하기 위해 mutex lock을 이용하여 한 번에 하나의 스레드만 해당 부분을 실행하도록 하는 방법을 소개합니다.동기화가 중요한 이유와 mutex lock을 통한 스레드 간 상호배제에 대한 중요성을 설명합니다.즉, 하나의 코드 영역에는 한 번에 하나의 스레드만..
2024.05.21 -
pthread 라이브러리 학습을 위한 간단한 예제는?
pthread 라이브러리를 학습하기 https://www.youtube.com/watch?v=AXT8qph-bSs 이 강의는 pthread 라이브러리를 학습하기 위한 간단한 예제를 다룹니다.pthread 라이브러리에 대한 기본적인 기본 개념을 이해하기 위해 pthread_create 함수를 사용하여 쓰레드를 생성하는 방법과 pthread_join 함수를 사용하여 생성한 쓰레드의 종료를 기다리는 방법을 설명합니다.코드 예제를 통해 실제로 쓰레드가 동시에 실행되는 모습을 확인할 수 있습니다.마지막으로 schedule yield 함수를 사용하여 쓰레드 간 제어권을 넘겨주는 방법에 대해서도 다룹니다.pthread 라이브러리 학습을 위한 간단한 예제는?pthread 라이브러리를 배우기 시작하는 간단한 예제를 살..
2024.05.21 -
파이프, 프로세스 생성, 파일 디스크립터 복제 등의 개념
파이프, 프로세스 생성, 파일 디스크립터 복제 등의 개념 C언어로 파이프 및 포크 예제 확인 부모 프로세스와 자식 프로세스 간의 파이프와 포크를 기반으로하는 응용 프로그램을 확인해요. 부모 프로세스는 파이프로부터 텍스트 데이터를 읽고, 31바이트씩 읽어 나가며 파이프가 닫힐 때까지 데이터를 출력하죠. 이전 예제와 유사하지만, 부모가 읽는 역할을 하고 자식이 쓰는 역할을 하는 차이가 있어요. 부모 프로세스는 쓰기 파이프를 닫고 텍스트 데이터를 읽는데 그때까지 데이터를 출력하며, 이는 이전 예제와 동일하죠. 프로세스 복제 동작 설명 이 예시에서 다른 점은 자식 프로세스에 있어요. 자식 프로세스를 확인해요. 그 이후에 파운드를 받침 시킨 다음, 자식 프로그램이 실행돼요. 이 작업은 복제 작업을 호출하는 거예요..
2024.04.09 -
'파이프'를 이용한 프로세스간 통신 메커니즘
'파이프'를 이용한 프로세스간 통신 메커니즘 C 언어에서 파이프 구현? 파이프 메커니즘은 우선 예시를 통해 배우는데, main 함수에서 파이프를 생성하는 연산을 살펴봐요. 이 연산은 파이프를 생성하고 파이프를 가리키는 포인터를 전달해요. 읽기 작업 시 0이 아닌 값을 반환하면 오류가 발생했음을 나타낸답니다. 시스템 API는 주로 반환 값으로 오류 여부를 나타냅니다. 파이프는 프로세스 간 통신을 위한 메커니즘이며, 이러한 커뮤니케이션 방식은 파일을 통해 이루어집니다. 파이프의 사용된 문맥을 보면, 파일을 통해 부모 프로세스와 자식 프로세스 간에 데이터를 전달하고 통신하는 방법을 설명하고 있습니다. 전체적인 문맥으로 볼 때, 이 내용은 '파이프'라는 용어가 프로세스 간 데이터 교환을 위해 사용되는 특정한 메..
2024.04.08 -
프로세스 간 통신과 시그널 처리
프로세스 간 통신과 시그널 처리 프로그램 대기 및 실행 흐름 확인 방법? CNRS 트리를 살펴보면, 한번에 두 번 실행해야 하는 경우가 있어요. 이때는 종료 신호를 두 조각으로 나눌 수 있어요. 시그널 넘버 쓰리의 소스 코드를 보면, sig int 대신에 term에 핸들러를 등록한 것을 알 수 있어요. 이것은 종료를 위한 신호인데, 핸들러를 등록하고 많은 함수가 스캐너로 이동하고 정수가 올 때까지 기다리는 방식이에요. 사용자로부터 명령이 올 때까지 프로그램이 대기하도록 하는 것이죠. 시그널 핸들링의 기능은 무엇인가요? 시그널이 발생하면 핸들러 기능에서 작업을 생성할지 물어봐요. 프로세스 목록을 나열하고, 시그널을 받는 것을 확인할 수 있죠. 시그널을 받으면 작업 종료 여부를 물을 수 있고, 사용자가 종료..
2024.04.07 -
시그널링을 사용하여 프로세스 간 통신을 하는 방법
시그널링을 사용하여 프로세스 간 통신을 하는 방법 컴퓨터 시스템에서의 신호 및 인터럽트 처리는? 운영 체제에서 제공되는 소프트한 인터프로세스 메커니즘 '신호'를 통해 인터프로세스 통신 방법을 알아봐요. 인터럽트가 발생할 때 운영 체제가 없다면 프로그램 안에서 직접 인터럽트 핸들러를 연결하고 처리할 수 있지만, 운영 체제가 있는 경우, 하드웨어 인터럽트와 해당 핸들러를 운영 체제에 의해 관리해요. 운영 체제는 인터럽트 신호를 응용 프로그램으로 전달하고 해석하여 관리하는데, 이를 빠른 인터럽트나 인터럽트 관리자의 한 형태로 생각할 수 있어요. 하드웨어 인터럽트 외에도 운영 체제는 지원 구성요소 사이의 통신을 위해 소프트웨어 인터럽트도 사용해요. 소프트웨어 시그널링과 프로세스 커뮤니케이션 패턴? 프로세스 간 ..
2024.04.06