[프로그래밍] 프로세스와 스레드

  • 등록일 / 수정일
  • 페이지 / 형식
  • 자료평가
  • 구매가격
  • 2008.11.10 / 2019.12.24
  • 5페이지 / fileicon doc (MS워드 2003이하)
  • 평가한 분이 없습니다. (구매금액의 3%지급)
  • 500원
다운로드장바구니
Naver Naver로그인 Kakao Kakao로그인
최대 20페이지까지 미리보기 서비스를 제공합니다.
자료평가하면 구매금액의 3%지급!
이전큰이미지 다음큰이미지
목차
프로세스
스레드
notify() 메쏘드
본문내용
1. 프로세스와 스레드의 차이점을 설명하시오.
프로세스
프로세스는 컴퓨터 내에서 실행중인 프로그램의 인스턴스이다. 이 용어는 몇몇 운영체계에서 사용되는, "태스크"라는 용어와 의미상으로 가깝다. 유닉스나 몇몇 다른 운영체계에서는, 프로그램이 시작되면 프로세스도 시작된다. 태스크와 마찬가지로, 프로세스는 그 프로세스가 추적 관리될 수 있게 하기 위한 특정한 데이터 셋이 관련되어 실행 중인 프로그램이다. 여러 명의 사용자들에 의해 공유되고 있는 응용프로그램은 일반적으로 각 사용자들의 실행단계에서 하나의 프로세스를 갖는다. 프로세스는 자프로세스라고도 불리는 서브프로세스를 시작시킬 수 있다. 자프로세스는 부프로세스의 복제로서 부프로세스의 자원을 일부 공유하는데, 부프로세스가 종료되면 더 이상 존재할 수 없다. 프로세스들은 몇 가지 IPC 방식을 통하여 정보를 교환하거나 그들의 연산을 동기화할 수 있다.
스레드
컴퓨터 프로그래밍에서, 스레드는 다수의 사용자들을 동시에 처리할 수 있는 프로그램이 각각의 사용과 관련하여 가지고 있는 정보들 말한다. 프로그램의 관점에서 보면, 스레드는 한 명의 개별 사용자 또는 특정한 서비스 요청을 서비스하는데 필요한 정보이다. 만약 다수의 사용자들이 그 프로그램을 쓰고 있거나, 또는 다른 프로그램들로부터 동시에 요청이 발생했을 때, 각각의 사용자나 프로그램들을 위해 스레드가 만들어지고, 또 유지된다. 스레드는 프로그램에게 현재 어떤 사용자가 서비스를 받고있는지를 파악하게 함으로써, 다른 사용자들을 위하여 재진입 해야할 것인지의 선택을 할 수 있도록 한다 (단방향 스레드 정보는 특별한 데이터 저장소 내에 그것을 저장하고, 데이터 저장소의 주소를 레지스터에 집어넣음으로써 유지된다. 운영체계는 항상 프로그램이 중단되었을 때 레지스터의 내용을 저장하며, 그리고 다시 제어권이 주어졌을 때 그 내용을 복구한다).
프로세스는 서로간의 데이터를 공유 할 수 없는 반면에 각각의 프로세스 내부에 생성되는 스레드는 각각의 프로세스 내부의 데이터를 서로 공유할 수 있다.



2. 1초에 한 번씩 자신의 이름을 화면에 출력하는 스레드를 작성하시오.
(Thread를 상속하는 방식과 Runnable을 구현하는 방식으로 각각 작성하시오)
(소스와 결과화면을 제출하시오)


//스레드를 상속하여 1초마다 나의 이름을 화면에 표시한다. 이름과 함께 시간도 함께 표시한다. ?
public class TimeThread extends Thread {
public static void main(String args[]){
TimeThread t = new TimeThread ();
t.start();
}

public void run(){
long start=0,end=0;
try{
while(true){ start=System.currentTimeMillis();
Thread.sleep(1000);
end=System.currentTimeMillis();
System.out.println("안상민 "+(end‐start));
}
}catch(InterruptedException e){
System.out.println("Interrupted");}
}
}
결과
안상민 1002
안상민 1001
안상민 1002
안상민 1001
안상민 1002
안상민 1001
안상민 1001
안상민 1002
안상민 991
안상민 1002
안상민 1041
안상민 992
안상민 1001
안상민 1002


// Runnable을 구현하는 방식으로 이름을 출력한다. 시간도 함께 출력한다.
public class TimeThread implements Runnable{
public static void main(String args[]){
Thread t= new Thread(new TimeThread(),"Print_Myname");
t.start();
}
public void run(){
long t1=0,t2=0;
try{
while(true){ t1=System.currentTimeMillis();
Thread.sleep(1000);
t2=System.currentTimeMillis();
System.out.println("안상민 "+(t2‐t1));
}
}catch(InterruptedException e){
System.out.println("Interrupted");}
}
}
결과
안상민 1002
안상민 1001
안상민 1002
안상민 1001
안상민 1001
안상민 992
안상민 1001
안상민 1002
안상민 1001
안상민 1002
안상민 1001


자료평가
    아직 평가한 내용이 없습니다.
회원 추천자료
  • 프로세스 상태전이와 스레드에 관해서 작성하시오
  • 프로세스를 가집니다. 이 프로세스는 서브 프로세스라고도 불리는 서브 프로세스를 시작하는 경우가 있습니다. 자 프로세스는 서브 프로세스의 복제이며 서브 프로세스의 리소스의 일부를 공유하지만 서브 프로세스가 종료되면 서브 프로세스는 존재할 수 없게 됩니다. 프로세스는 여러 IPC 방식을 사용하여 정보를 교환하거나 동작을 동기화할 수 있습니다.스레드컴퓨터 프로그래밍에서, 스레드는 다수의 사용자들을 동시에 처리할 수 있는 프로그

  • 운영체제 개념 설명 레포트
  • 프로세스가 마치 자신만의 프로세서와 메모리를 가지고 있는 것처럼 생각할 수 있도록 운영체제를 설계하는 접근 방식.아무 플랫폼에서나 같은 방식으로 실행하는 프로그램을 허용하고 기초가 되는 하드웨어나 운영 체제의 상세한 부분을 가져오는 독립 프로그래밍 환경을 제공한다.가상머신은 하드웨어가 아니면서도 서버와 동일한 기능을 수행하는 소프트웨어를 말합니다.가상머신은 물리적 서버와 마찬가지로 운영체제와 애플리케이션을 실행

  • 네트워크 프로그래밍 - 멀티 스레드를 이용한 파일 수신 서버 작성
  • 스레드 생성hThread = CreateThread(NULL, 0, ProcessClient,(LPVOID)clientsock, 0, NULL);if(hThread NULL) closesocket(clientsock); else CloseHandle(hThread); Main() 함수에서 클라이언트의 다중 접속을 지원하기 위해 클라이언트 프로세스가 접속하면 스레드를 생성하는 코드를 넣어 주었다.위 코드를 while문 안에 넣어 클라이언트 프로세스가 접속하여 메인스레드가 이를 받아 들이면 accept()) 스레드를 생성하는 구조로 만들었다.이 때, 스레드의 stack size는 0, 스레드 함수로는

  • [정보통신] [공학]프로그래밍 언어론(정익사 - 원유헌) 수정본
  • 프로세스를 반복한다.반복문을 벗어나는 방법에는 break문과 exit문이 있는데 exit문 같은 경우에는 프로그램이 반복 실행되다가 exit문장에 도달하면 exit문장을 포함한 loop-repeat문장 영역의 바로 다음 문장으로 제어가 전달된다.28. 프로그래밍 언어에서 반복문의 구현할 때에 고려되어야 할 사항들을 나열하라.∙ 반복 변수 가 택할 수 있는 값들의 자료형은 무엇인가?∙ 식 초기값 , 최종값 , 증분값 에 어느 정도 복잡한 식이 허용되며

  • 운영체제론 시험대비(총정리)
  • 프로그래밍 및 시분할 시스템에 관련된 사항- 중앙처리장치 스케줄링(5장): 프로세스에 CPU를 할당하는 기법- 작업 스케줄링(5장): 디스크의 작업 저장소(job pool)에서 일부를 기억장치에 위치시키는 기법- 기억장치 관리(8장): 여러 작업을 기억장치에 보관하는 기법- 가상기억장치(9장): 작업의 일부만이 기억장치에 존재하게 할 수 있고, 적절한 응답시간을 유지하기 위해 작업을 주기억장치와 디스크간에 스웹인(swap-in), 스웹아웃(swap-out)시키는 기법-

오늘 본 자료 더보기
  • 오늘 본 자료가 없습니다.
  • 저작권 관련 사항 정보 및 게시물 내용의 진실성에 대하여 레포트샵은 보증하지 아니하며, 해당 정보 및 게시물의 저작권과 기타 법적 책임은 자료 등록자에게 있습니다. 위 정보 및 게시물 내용의 불법적 이용, 무단 전재·배포는 금지됩니다. 저작권침해, 명예훼손 등 분쟁요소 발견시 고객센터에 신고해 주시기 바랍니다.
    사업자등록번호 220-06-55095 대표.신현웅 주소.서울시 서초구 방배로10길 18, 402호 대표전화.02-539-9392
    개인정보책임자.박정아 통신판매업신고번호 제2017-서울서초-1806호 이메일 help@reportshop.co.kr
    copyright (c) 2003 reoprtshop. steel All reserved.