본문 바로가기

리눅스/일반 운영체제론2

동기화[2] - 뮤텍스 / 세마포어 / 스핀락 ※ 해당 글은 개인 공부 기록을 남겨놓는 것이 목적임으로 오류가 발생할수 있습니다.    오류 또는 업데이트된 사항이 있다면 댓글로 알려주시면 감사하겠습니다.  지난 동기화[1] 포스팅에서 동기화의 개념과 발생 가능한 문제점에 대해 포스팅 하였습니다. 이번 포스팅에서는 동기화로 발생가능한 문제점을 해결하기 위해 대표적인 메커니즘인뮤텍스 , 세마포어 , 스핀락에 대해 정리한다. 뮤텍스(Mutex, Mutualv exclusion , 상호 배제) Lock 메커니즘이며, 한 쓰레드만 Lock을 획득하고 임계 영역에 들어갈수 있도록 보장한다. 이 스레드는 임계 섹션에서 종료될 때만 Lock을 해제합니다. 프로그램이 시작되면 시스템에 특정 리소스에 대한 뮤텍스 개체를 생성하도록 요청합니다. 시스템은 고유한 이름이.. 2024. 8. 13.
동기화[1] - 개념 ※ 해당 글은 개인 공부 기록을 남겨놓는 것이 목적임으로 오류가 발생할수 있습니다.    오류 또는 업데이트된 사항이 있다면 댓글로 알려주시면 감사하겠습니다.개념 정리: 프로그램은 저장 장치에 저장되어 있는, 실행 가능한 코드의 정적인 집합입니다. 프로그램은 디스크와 같은 비휘발성 메모리에 저장되며, 사용자가 요청할 때까지 실행되지 않습니다. 프로그램은 소프트웨어 개발자에 의해 작성되고, 컴퓨터에서 실행될 수 있는 명령어들과 데이터를 포함프로세스(Process) : 컴퓨터 내에서 실행 중인 프로그램의 요소프로세스는 1. 프로세스명과 프로세스 아이디(PID)로 나타낸다.프로세스는 프로그램 카운터, 스택, 데이터 섹션 등 실행에 필요한 다양한 정보를 포함하며, 운영체제가 관리한다.프로세스가 실행 중 자신에게.. 2024. 8. 7.