병행 프로세서 과목 : 운영체제 학번 : 200412115 이름 : 조장호.

Slides:



Advertisements
Similar presentations
돈과 빈곤. 가난은 장애다 “ 이발소 건물 주인 아저씨는 휠체어를 타고 다녔어. 장애인이었지. 하지만 아버지 앞에서 는 늘 당당했어. 아버지하고 얘기를 나눌 때 면 아버지는 늘 무릎을 꿇으셨지. 눈을 맞춰 야 하니까. 위에서 내려다볼 수는 없잖아, 건 물 주인을. 그.
Advertisements

방과후 컴퓨터 교실 실력 Up 행복 Up 신풍초등학교. 실력 UP 행복 UP 방과후컴퓨터교실 한글 2005 에서 문서를 관리할 수 있다. 한글 2005 에서 문서를 작성할 수 있다. 한글 2005 의 화면을 구성하는 요소의 종류와 역할을 설명할 수 있 다. Ⅰ. 한글.
A 장형태.  병행프로세스 개요  상호배제 (Mutual Exclusion)  상호배제 ( 세마포어 )  모니터 (monitor)  프로세스간 2 가지 통신방법.
한옥과 신한옥의 개념.
제 3 호 농촌 어메니티 관광개발 정보 -농어촌체험 ∙ 휴양마을 지정제도- 농 촌 진 흥 청 농촌자원과.
11 레지스터 (Register) IT CookBook, 디지털 논리회로.
7~9월 프로그램 광산구드림스타트 호 소식지 신체 / 건강 인지/언어 정서/행동
2012년도 부산문화재단 지원사업 2차 설명회 후원 주최 (수) 15:00 부산디자인센터 6층 이벤트홀.
제 4 장 프로세스 Section 1 프로세스의 개념 Section 2 프로세스 스케줄링
제1장 소프트웨어 프로젝트 개요 1.1 프로젝트개요 1.2 프로젝트 유형 1.3 프로젝트 관리의 중요성과 실패 원인
2017년 스타트Up-청년취Up 매칭사업 개요 □ 사업목적 □ 지원내용 □ 청년인재 정의 □ 스타트업 정의
창의 경영 학교 2011 사교육절감형 학 성 초 등 학 교 (목) 집중컨설팅 안녕하십니까
커뮤니케이션 스킬 UP -전화매너- ..
But, 성공하려면 과정이 필요합니다. 목표달성을 위해 정해진 기간이 필요~! 어떤 노력을 기울여야 할가요~?
제 6장 프로세스 간 동기화 및 통신 6.1 개요 6.2 병행 처리의 문제점
고객상담과 서비스 향상 방향 2010년 4월 01일 고객지원팀.
재학생들의 자존감 향상을 돕기 위한 집단상담 프로그램
Chapter 13 – 병렬 프로그래밍과 병렬 처리
소프트웨어 공학 (Software Engineering)
제 7 장 교착 상태 7.1 개요 개념 교착 상태란 프로세스들의 집합이 더 이상 진행을 못하고 영구적으로 블록되어 있는 상태 집합 내의 한 프로세스가 특정 사건의 발생을 기다리며 대기하고 있고, 이 사건이 집합 내의 다른 블록 된 프로세스에 의해 발생될 수 있을.
프로세스 관리.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
제 6 장 프로세스 동기화 (Process Synchronization)
임베디드 운영체제 (리눅스 중심) Lecture #2.
Multi-thread Programming
Ch 14. System Thread.
4장 병행 프로세스 병행성의 원리를 이해한다 병행 프로세스 수행과 관련된 상호 배 제 해결방안을 알아본다
데이터베이스 실험실 석사 2학기 김기훈 TCP/IP Socket Programming… 제 17장 멀티쓰레드 기반의 서버구현 데이터베이스 실험실 석사 2학기 김기훈
운영체제 허상복 컴퓨터시스템 연구실
Flip-Flop 설계.
03. 병행 프로세스 (Parallel Process)
오브젝트 하드웨어 기술 언어 IT CookBook, VHDL을 이용한 디지털 회로 입문.
제6장 프로세스 동기화(Process Synchronization)
4 병행 프로세스와 상호배제.
All about Travel 하나샵 즉당 검색 이벤트
2.1 재배정 재배정요구등록 재배정승인취소 재배정부서연결 재배정단위업무연결
응급의학과 설명회 국내 응급의학의 역사, 현황 및 전망
멀티 쓰레드 기반의 채팅 프로그램 문성영 김현진 학번 이름 장용하 차희진 연구제안서.
제 6 장 프로세스 동기화 (Process Synchronization)
3장 운영체제 2C 김주성.
Operating System Concepts
사진동호회 홍보자료 찰나를 담는 시간여행자들의 모임 사내 사진동호회 “찰칵”
자바 5.0 프로그래밍.
2. 상호배제와 동기화 01 program versionone; // 첫 번째 버전
Linux/UNIX Programming APUE (Thread Programming)
5. Semaphores ㈜아이티즌 기술연구소
동기화 문제 디버깅하기 사람이 컴퓨터 보다 아름다워♪ Advanced Windows Debugging Chapter.10
법인객실 예약 메뉴얼 하이원리조트 중부사무소.
23. Unix 시스템 커널. 개요 커널의 기본 서비스 커널의 특징 참고서적 프로세스 관리 장치 관리 파일 관리 가상 메모리
쇼핑몰 V1.9 Cafe24 굿스플로 택배연동 사용 매뉴얼 ⓒ2009 Cafe24 ECHOSTING.
제 2장 프로세스 관리와 CPU 스케줄링 2.1 프로세스의 개념 2.2 CPU 스케줄링의 목적과 유형
청소년 흡연예방 교육자료3. 한국금연운동협의회 교육부장 이 영 자.
운영체제 (Operating System) (하드웨어와 응용 프로그램 사이의 인터페이스 역할을 담당하는 시스템 소프트웨어)
기술 진화와 진보.
성립전예산 요구등록 (사업담당자) 사업관리카드 1 2
운영체제 학번 : 이름 : 이원석 반 : 2B.
병행 프로세스 병행처리는 프로세스들이 서로 관계없이 독립적으 로 수행 가능하고 다른 프로세스들과 협력을 필요로 하면서 기능 수행 3.1 개요 parbegin/parend 제어문 : 순차적인 수행으로부터 여러 개의 동시 수행으로 갈라짐을 지시하는 명령어와 여러 개의 동시.
사업계획서 작성 이중언어세미나.
커뮤니케이션 스킬 UP -전화매너- ..
03. 병행 프로세스(Parallel Process)
“알콜중독자 대상 심리안정 프로그램”.
Concurrency: Mutual Exclusion and Synchronization (상호배제와 동기화)
10장. 컴퓨터 구조에 대한 세 번째 이야기 작성자: 윤성우.
운영체제 (Operating Systems)
저출산 극복을 위한 우리공단의 추진과제 경인 제4권역 Mind up 100분 토론.
세부담 증가의 사례연구 1 기본가정 변동사항 목적 금융소득의 구성은 다음과 같음 1. 금융소득 중 배당소득은 비상장 법인
의사소통 이론의 이해 김연주 백정훈.
3장 병행 프로세스 2A 박훈.
Chapter 7: Deadlocks.
3장 – 병행 프로세스 A 김정문.
Presentation transcript:

병행 프로세서 과목 : 운영체제 학번 : 200412115 이름 : 조장호

병행 프로세스(Parallel Process) 3.1 개요 순차적인 수행으로부터 여러개의 동시 수행으로 갈라짐을 지시하는 명령어와 여러개의 동시 수행되는 것들이 하나로 모여서 순차적 수행으로 돌아가도록 지시하는 명령어가 있다. 이것을 Parbegin/ parend 제어문이라고 하는데 일반적인 형태는 다음과같다. 여기서 하나의 선형 그래프의 예 선형 그래프는 각 문장에 대응되는 노드들이 유향 비순환 그래프(directed acyclicgraph)를 이루는 것이다. 노드 Si에서 노드Sj로 가는 에지(edge)는 문장 si가 완전히 수행된 다음에 문장 sj가 수행됨을 의미한다. Parbegin statement 1; statement 2; statement n; Parend s1 s2 s3 s4 s6 s5 s7

병행 프로세스(Parallel Process) 3.2 상호배제(Mutual Exclusion)와 임계영역 (Critical Seclion) 상호 배제란 특정 프로세스가 공유 자원을 사용하고 있을 경우 다른 프로세스가 해당 공유 자원을 사용하지 못하게 제어하는 기법이다. 그리고 여러 프로세스가 동시에 공유 자원을 사용하려 할 때 각 프로세스가 번갈아 가며 공유 자원을 사용하도록 하는 것으로 임계 구역을 유지하는 기법이다. 임계영역이란 여러개 프로세스가 공유하는 데이터 및 자원에 대하여 어느 한 시점에서는 하나의 프로세스만 자원 또는 데이터를 사용하도록 지정된 공유 자원으로, 임계영역은 특정 프로세스가 독점할 수 없다.

병행 프로세스(Parallel Process) 3.3 세마포어(Semaphore) 세마포어란 단지 P와V, 그리고 세마포어 초기치를 설정해 주는 오퍼레이션에 의해서만 액세스될 수 있는 통제된 변수이다. 이진 세마포어는 0과 1의 두 가지 값만을 가질 수 있고, 산술 세마포어는 0과 양의 정수를 값으로 가질 수 있다. 사용 세마포어는 n개 프로세스의 임계영역 문제를 다루는데 사용된다. N개의 프로세스는 1로 초기화된 공통 세마포어인 mutex를 공유한다.

병행 프로세스(Parallel Process) 3.3 세마포어(Semaphore) 구현 세마포어의 가장 큰 단점은 바쁜 대기를 요구하는 것이다. 어떤 프로세스가 임계영역 내에 있는 동안 그 임계영역에 들어가려고 하는 다른 프로세스는 진입코드에서 계속해서 돌게 된다. 이 문제는 하나의 CPU가 많은 프로세스에 의해 공유되는 실시간 다중 프로그래밍 시스템에서 특히 심각해진다. 바쁜 대기로 다른 프로세스가 생산적으로 사용할 수 있는 CPU시간을 낭비하기 때문이다. 세마포어의 중요한 특징은 단위적으로 수행된다는 점이다. 두 개의프로세스가 동시에 같은 세마포어에 대하여 P와 V 조작을 할 수 없게 해야 한다. 이 상황은 임계 영역 문제의 한 예이고, 두 가지 방법 중의 하나로써 해결할 수 있다. 단일 프로세서인 경우에는 ( 단 하나의 CPU만 존재 ), p와

병행 프로세스(Parallel Process) 3.3 세마포어(Semaphore) 구현 P와V 조작이 수행 중에는 인터럽트를 금지시키면 된다. 이 방법은 일단 인터럽트가 금지되면 다른 프로세서로부터의 명령어의 실행이 중단에 끼어들지 않으므로 단일 프로세서 환경에서 활용된다. 다중 프로세서인 경우에는 인터럽트의 금지가 운용될 수 없다. 다른 프로세서로부터의 명령어는 어떤 임의의 방법으로서 끼어들 수 있다. 하드웨어가 어떤 특별한 명령을 제공하지 않으면 임계 영역 문제에 대한 정확한 소프트웨어 해결 방법을 사용해야 하는데, 여기서 임계 영역은 P와V, 프로시쥬어로 구성된다.

병행 프로세스(Parallel Process) 3.3 세마포어(Semaphore) 구현 이러한 P와V 조작으로써는 바쁜 대기를 완전히 제거할 수 없다는 것을 인정해야 한다. 그보다는 응용 프로그램의 진입점으로부터 임계 영역으로 바쁜 대기를 이동시켰다. 더욱이 이를 P, V 조작의 임계 영역 내에서만 제한 했는데, 그것은 아주 짧은 시간 동안이다. 그러므로 임계 영역은 거의 항상 비어 있고, 바쁜 대기가 거의 일어나지 않는 것 처럼 보이게 된다. 바쁜 대기가 일어났을 때는 아주 짧은 시간 동안만이다. 어떤 응용 프로그램에서는 임계 영역이 아주 길거나 거의 항상 점유되어 있는 상황이 발생할 수 있다. 이 경우 에는 바쁜 대기가 매우 비효율 적이다.

병행 프로세스(Parallel Process) 3.4 요약정리 -임계구역(Critcal Section) 다중 프로그래밍 운영체제에서 여러 개의 프로세스가 공유하는 데이터 및 자원(영역). 임계 구역에는 하나의 프로세스만 접근할 수 있으며, 해당 프로세스가 자원을 반납한 후에만 다른 프로세스가 자원이나 데이터를 사용할 수 있음. -상호배제(MutualExclusion) 특정 프로세스가 공유 자원을 사용하고 있을 경우 다른 프로세스가 해당공유자원을 사용하지 못하게 제어하는 기법 여러프로세스가 동시에 공유 자원을 사용하려 할 때 각 프로세스가 번갈아 가며 공유 자원을 사용하도록 하는 것으로 임계 구역을 유지하는 기법

병행 프로세스(Parallel Process) 3.4 요약정리 -세마포어(Semaphore) 각 프로세스에 제어 신호를 전달하여 순서대로 작업을 수행하도록 하는 기법. E.J.Dijkstra가 제안하였으며, P와V라는 2개의 연산에 의해서 동기화를 유지시키고, 상호 배제의 원리를 보장함. S는 P와 V 연산으로만 접근 가능한 세마포어 변수로, 공유 자원의 개수를 나타내며 0과 1 혹은 0과 양을 값을 가질 수 있음. P연산 : 자원을 사용하려는 프로세스들의 진입 여부를 자원의 개수(s)를 통해 결정하는 것으로, wait 동작이라 함. V연산 : 대기 중인 프로세스를 깨우는 신호(Wake Up)로서, signal 동작이라 함.

병행 프로세스(Parallel Process) 3.4 요약정리 -모니터(Monitor) 모니터란 여러 프로세스 사이에 공유 데이터와 이 공유 데이터에 접근하는 여러 프로시져(Procedure)이다. 즉 임계 영역 코드의 집합으로 정의 할 수 있다. 동기화를 구현하기 위한 특수 프로그램 기법으로 특정 공유 자원을 프로세스에게 할당하는데 필요한 데이터와 이 데이터를 처리하는 프로시저로 구성됨. 자료추상화와 정보 은폐 개념을 기초로 하며 공유 자원을 할당하기 위한 병행성 구조로 이루어져 있음. 모니터 내의 공유 자원을 사용하려면 프로세스는 반드시 모니터의 진입부를 호출해야 함. 외부의 프로시저는 직접 액세스할 수 없으며, 모니터의 경계에서 상호 배제가 시행됨. 한순간에 하나의 프로세스만 진입하여 자원을 사용 할 수 있음.