검색어 입력폼

병렬프로그래밍

저작시기 2007.10 |등록일 2008.02.23 한글파일한글 (hwp) | 14페이지 | 가격 2,900원

소개글

병렬 프로그래밍 개념,병렬 처리 소개,3. 세마포어(Semaphores)

목차

1. 병렬 프로그래밍과 병렬 처리
1) 병렬 처리 소개
2. 병렬 처리와 프로그래밍 언어
1) 명시적인 언어 기능을 사용하지 않는 병렬 프로그래밍
2) 프로세스 생성과 소멸
3) 명령어 수준의 병렬
4) 프로시저 수준의 병렬성
5) 프로그램 수준의 병렬성
3. 세마포어(Semaphores)
4. 모니터
1) CSP/K
2) Concurrent-Pascal
5. 메시지 전달 기법
6. 실시간 언어
- 참고문헌 -

본문내용

1. 병렬 프로그래밍(Concurrent programming)과 병렬 처리(Parallel processing)
병렬 처리(parallel processing)란 다수의 프로세서들이 여러 개의 프로그램들 또는 한 프로그램의 분할된 부분들을 동시에 처리하는 기술을 의미한다. 병렬 처리는 한 프로그램을 여러 개의 작은 부분들로 분할해서 병렬로 실행 시킨 결과가 전체 프로그램을 순차적으로 실행한 경우와 동일한 결과를 얻을 수 있다는 것을 보장해야 된다.
병렬 처리의 구현을 위한 병렬 프로그래밍에 대한 연구는 두 가지로 분류 할 수 있다.
첫번째는 병렬 프로그래밍 언어 자체에 대한 연구이다. 즉, 병렬 처리가 가능한 병렬 프로그램이 언어를 이용하여 사용하여 사용자가 병렬 프로그램을 작성하는 방법이다. 이러한 병렬 프로그래밍 언어에는 Ada, Occam, Concurrent Pascal 등이 존재 한다. 이 개념은 병행 프로그램(concurrent programming)으로 간주되기도 한다. 병행 프로그래밍이란 언어 표기에서 병렬 성을 지원하는 것을 의미하며, 실제 하드웨어가 병렬로 처리 하지 않을 수도 있음을 의미한다.
두 번째는 병렬 컴파일러에 관한 연구이다. 기존의 순차적 프로그래밍 언어로 작성된 프로그램을 병렬 컴파일러를 이용하여 병렬 처리가 가능 하도록 하는 방법이다 .
1) 병렬 처리 소개
컴퓨터 시스템을 분류하는 방식으로 Flynn의 분류가 가장 널리 사용되고 있다. 이 분류에서는 프로세서들이 처리하는 명령어들과 데이터들의 스트림에 따라 네 가지로 분류하고 있다.
Flynn에 의한 네 가지 분류는 다음과 같다
□ SISD(Single-instruction Single-data)
□ SIMD(Single-instruction Multiple-data)
□ MISD(Multiple-instruction Single-data)
□ MIMD(Multiple-instruction Multiple-data)

참고 자료

- 원유헌, <프로그래밍 언어론>, 정익사, 2003.
다운로드 맨위로