• 전문가 요청 쿠폰 이벤트
*준*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 2
검색어 입력폼
  • 프로세스(process), 프로세스 제어 블록(PCB), 상태 천이도
    □ 프로세스와 프로그램을 비교 설명하시오.○ 프로세스- 처리를 받는 작업의 작은 단위이다.- 실행중인 프로그램- 프로시저가 활동중인 것- 운영체제가 관리하는 실행단위- 실행 중인 프로시저의 제어 추적- 운영 체제 내에 PCB(Process Control Block) 존재- 프로세(Processor)가 할당하는 개체- 디스패치가 가능한 대상- 우리가 컴퓨터를 켜고 게임을 하나 실행시켰다면 우리는 간단히 마우스를 더블클릭했을 겁니다. 그 더블클릭을 하는 순간 실행파일이 하드디스크에서 램으로 읽혀지는 겁니다. 이 파일은 컴퓨터가 알아듣도록 기계어로 된 명령들의 나열입니다. 단 한 개의 간단한 명령이 아닌 무수히 많은 명령들로 이루어졌기 때문에 한꺼번에 수행되지 않습니다. 그래서 주기억장치에 올려진 이 프로그램을 조금씩 조금씩 한번에 실행할만큼의 크기로 나누어 놓았습니다. 그리고 이 작은 조각들을 CPU는 분리해서 처리를 해주죠. 이 작은 조각 하나하나를 태스크라고 합니다. 그리고 여러 개의 태스크 중에 현재 처리를 받고 있는, 서비스를 받고 있는 태스크를 프로세스라고 합니다. 그러니 이걸 보고 사람들은 간단히 정의를 내리더군요 “현재 수행중인 프로그램”이라고 말입니다.“현재 수행중인 프로그램의 조각”이라고 정의를 내리고 싶습니다. 이 프로세스의 입장에서 보면 자신들은 컴퓨터라는 기계를 사용하고 있다고 생각할 것입니다. 프로세스 자신들이 컴퓨터의 자원을 점유하고 있다고 말이죠. 하나의 프로그램은 여러 개의 프로세스로 이루어지는데 이 프로세스들은 한 순간에 하나만 컴퓨터를 사용하게 됩니다. 동시에는 안되죠. 화장실도 한 사람씩 들어가는게 잘하는 겁니다. 여러 사람이 한꺼번에 들어가는 건 왠지 좀 찜찜하죠. 그래서 이 프로세스는 컴퓨터의 자원을 사용하고자 줄을 서서 기다리고 있습니다. 이런 줄을 서는 방법이 여러 가지가 있는데 이걸 프로세스 스케줄링이라고 하는 겁니다. 그건 나중에 다시 얘기하기로 하구요. 하나의 프로세스가 컴퓨터의 자원을 다 사용하고 나면 그 다음 프로세스가 사용을 합니다. 근데 컴퓨터의 자원을 다 사용하지 않은 상태에서 다른 프로세스가 컴퓨터의 자원을 강제로 빼앗으면 선점을 하는 거니까 선점형이고 앞의 프로세스가 볼일 다 볼 때까지 중간에 빼앗지 못하고 기다리는 것을 비선점형이라고 합니다.○ 프로그램- 특정한 결과를 얻기 위하여 컴퓨터등 정보처리능력을 가진 장치내에서 직접 또는 간접으로 사용되는 일련의 지시·명령으로 표현된 것을 말한다 - 저작권법 제 2조- 컴퓨터로 처리하기에 적합한 명령의 집합 - 특허청- 전자계산기에 대한 지령이고, 하나의 결과를 얻을 수 있도록 조합된 것 - 일본 특허법- 컴퓨터로 문제를 풀기 위한 자세한 계획이나 절차. 좀더 자세히 말하면 답을 구하기 위해 명확하고 순서화된 계산 명령들의 배열을 말한다. 컴퓨터 프로그램과 장치의 차이는 주로 전자는 소프트웨어로, 후자는 하드웨어로 부른다는 것이다. 컴퓨터 기억장치에 저장된 프로그램들을 가지고 컴퓨터는 다양한 작업들을 순차적 또는 간헐적으로 수행하게 된다. 내부 저장 프로그램 방법은 1940년대말 헝가리 태생의 수학자인 존 폰 노이만이 개발했다. 내부적으로 프로그래밍할 수 있는 최초의 디지털 컴퓨터는 1949년에 개발된 에드박(EDVAC : electronic discrete variable automatic computer)이다. 프로그램은 먼저 작업을 공식화함으로써 시작되며 적당한 컴퓨터 언어를 선택하여, 즉 응용에 적합한 컴퓨터 언어를 사용하여 표현하는 것이다. 이렇게 표현된 프로그램은 몇 단계를 거쳐 부호로 된 프로그램으로 변역되는데 이 부호화된 프로그램은 작업이 수행될 컴퓨터가 직접 실행할 수 있는 것이다. 이 부호화된 프로그램은 기계어로 되었다고 말하며 원래 문제를 공식화할 때 사용한 언어는 문제 중심 언어(problem oriented language)라고 한다. 많은 문제 중심 언어가 개발되어왔는데 이들 중 중요한 것들은 코볼(COBOL : common business-oriented language)·포트란(FORTRAN : formula translation)·베이식(BASIC : beginners all-purpose symbolic instruction code)·파스칼(PASCAL) 등이다(→컴퓨터프로그래밍언어).컴퓨터에는 사용자의 작업을 보조하거나 시스템의 성능을 최적화하는 데 주로 사용하기 위한 다양한 프로그램을 가지고 있다. 이런 프로그램의 집합을 운영체제(OS)라 부르며 이 운영체제는 하드웨어처럼 컴퓨터 시스템의 동작에 매우 중요하다. 현재의 기술은 소비자의 주문에 따라 어떤 동작 특성을 고정된 프로그램으로 만들어서 제조할 때 미리 컴퓨터의 중앙처리장치에 넣을 수 있다. 사용자 프로그램에 비하면 운영체제는 실행중에 제어를 담당하는데, 예를 들어 시분할 모니터가 한 프로그램의 수행을 잠시 보류시키고 다른 프로그램을 수행시킨다든지 또는 사용자 프로그램을 시작하고 끝낸다든지 하는 역할을 하고 계획 프로그램의 역할을 할 때는 다음에 어떤 사용자 프로그램을 수행할 것인가를 결정한다든지 하는 것을 담당한다. 그러나 어떤 운영체제는 프로그래밍 과정을 쉽게 해주기 위하여 독립적으로 작용하는 것도 있다. 여기에는 어셈블러나 컴파일러와 같은 번역기가 포함되는데 이것은 프로그램을 한 언어에서 다른 언어로 번역하는 역할을 한다. 인터프리터(interpreter)는 프로그램을 순차적으로 수행하며 수행 단계마다 번역을 한다. 또 디버거(debugger)는 프로그램을 한 단계씩 수행하고 다양한 상태를 추적하여 프로그래머로 하여금 프로그램의 수행이 올바른지 잘못되었는지를 점검하게 해준다.○ 프로세스와 프로그램의 차이점- 프로세스 : Active Ebtry (Dynamic) : 프로그램 + 레지스터 + 프로그램 카운터 + 자원(Resource)- 프로그램 : Passive Entry (Static)□ 프로세스 상태 천이도를 그리고, 각 상태의 특징을 설명하시오.작업제출(Submit)준비(Ready)실행(Run)해제(Release)대기(Waiting)단기스케줄링디스패치작업완료할당시간종료WakeupBlock왼쪽의 그림에서 보면 작업제출을 하기 전에는 그냥 프로그램상태입니다. 그리고 작업제출이 되면서 프로세스가 된다고 볼 수도 있습니다. 앞으로 자세히 나올 프로세스 스케줄링은 그림에서 단기스케줄링이라고 박스를 만들어 놓은 부분만을 말합니다.1) 실행(Run)상태프로세스가 프로세서를 차지하여 서비스를 받고 있는 상태입니다. 작업이 다 끝나면 홀가분하게 모든걸 정리합니다. 릴리즈되었다고도 하죠. 근데 만약 시간 안에 끝나지 않았다면 다시 준비상태로 되돌렸다가 줄을 서고 차례가 되면 이전 서비스 받던 부분을 이어서 처리됩니다. 또한 서비스를 받던 도중에 입출력을 해야하는 일이 생기면 대기 상태로 되어집니다. 대기를 하고 있다가 입출력이 끝나면 준비상태로 되는거죠.2) 준비(Ready)상태실행될 수 있도록 준비되는 상태입니다. 앞의 프로세스가 처리가 다 되면 바로 이어서 서비스를 받을 수 있도록 준비를 하고 있죠.
    공학/기술| 2007.03.12| 4페이지| 1,000원| 조회(1,654)
    미리보기
  • [운영체제]장치드라이버(Device driver), 인터럽트(Interrupt), 다중프로그램(Multi-program), 이중모드(dual mode), 특권명령(Privileged instruction)
    □ 장치드라이버 (Device driver)? 장치 드라이버는 자신의 컴퓨터에 부착된 특정 주변장치들을 제어하기 위한 프로그램이다. 프린터, 모니터, CD-ROM 등에는 모두 이에 맞는 장치 드라이버들이 있다. 많은 장치 드라이버들은 운영체계를 구입하면, 거기에 포함되어 함께 제공된다. 그러나, 만약 나중에 운영체계가 예상치 못했던 새로운 형태의 장치를 구입했다면, 사용자 책임 하에 새로운 장치 드라이버를 설치해야만 한다 (대개, 제작회사가 제공하는 장치 드라이버가 그 장치에 딸려 나온다). 장치 드라이버는 본래 운영체계의 많은 일반적인 입출력 명령어들을, 각 장치들이 이해할 수 있는 메시지의 형태로 변환하는 역할을 담당한다.? 윈도우 운영체계에는 가상 장치 드라이버의 역할을 하는 프로그램들이 있다. 이러한 프로그램들은 윈도우 가상 장치 관리자와의 인터페이스를 수행한다. 하드디스크 드라이브 제어기, 키보드 그리고 직렬 및 병렬 포트 등을 포함한, 시스템 내의 주요 하드웨어 장치를 위해 가상 장치 드라이버가 있다. 이것들은 수정 가능한 설정치들을 가지고 있는 하드웨어 장치의 상태를 유지하는데 사용된다. 가상 장치 드라이버들은 하드웨어 인터럽트가 아니라, 시스템으로부터 발생하는 소프트웨어 인터럽트를 처리한다.? 윈도우 운영체계에서, 장치 드라이버 파일은 대체로 ".DLL"이나 ".EXE"와 같은 파일이름 확장자를 가지며 가상 장치 드라이버는 대체로 ".VXD"라는 확장자를 가진다.□ 인터럽트 (Interrupt)? 인터럽트는 컴퓨터에 장착된 장치나 컴퓨터 내의 프로그램으로부터 오는 신호로서 운영체계가 하던 일을 멈추고 다음에 무엇을 할 것인지를 결정하게 한다. 오늘날 거의 모든 PC나 대형 컴퓨터들이 인터럽트 기반의 시스템인데, 즉 일단 프로그램 내의 컴퓨터 명령문을 시작되면, 더 이상 작업을 진행할 수 없거나, 또는 인터럽트 신호가 감지될 때까지 명령문들을 실행한다. 인터럽트 신호가 감지되면, 컴퓨터는 실행되고 있던 프로그램을 재개하거나, 또는 다른 프로그램의 실행을 시작한다.? 기본적으로 단일 컴퓨터는 오직 한번에 한 개의 컴퓨터 명령어만을 수행할 수 있다. 그러나, 인터럽트 신호가 있기 때문에, 다른 프로그램이나 명령문을 수행할 수 있는 순서를 가질 수 있다. 이렇게 하는 것을 멀티태스킹이라고 하는데, 이것은 사용자로 하여금 동시에 여러 개의 작업을 할 수 있도록 해준다. 컴퓨터는 사용자가 효과적으로 일할 수 있게끔, 단순히 그 프로그램들이 수행될 순서를 관리한다. 물론, 컴퓨터는 사용자의 모든 작업들이 동시에 수행되는 것처럼 보이게 빠른 속도로 동작한다? 운영체계는 대개 인터럽트 관리기능을 가지고 있다. 인터럽트 관리장치는 만약 하나이상의 인터럽트가 처리되어야 하는 경우라면, 인터럽트들 간의 우선 순위를 정하고 그들을 큐에 저장한다. 운영체계는 스케줄러라고 불리는 또다른 작은 프로그램을 가지고 있는데, 이는 다음 번에 수행되어야할 프로그램에게 제어권을 넘겨준다.? IRQ는 특정한 장치를 식별할 수 있도록 각 장치별로 미리 정해진 값을 갖는다.□ 다중프로그램 (Multi-program)? 2개 이상의 프로그램을 주기억장치에 기억시키고 중앙처리장치(CPU)를 번갈아 사용함으로써 컴퓨터 자원을 최대로 활용하는 처리기법.? 중앙처리장치(CPU)는 날로 고속화되고 계산능력이 크게 증가하는 반면 기계적인 동작이 따라야 하는 입출력장치의 속도는 이에 미치지를 못한다. 따라서 한 프로그램이 주변장치의 처리를 기다리는 동안 다른 프로그램이 수행될 수 있게 함으로써 전체적인 시스템의 처리효율을 높이는 것이다.? 실제로 프로그램이 동시에 수행되는 것이 아니고 순차적으로 돌아가면서 조금씩 수행되지만, 속도가 매우 빠르므로 겉으로 보기에는 동시에 수행되는 것처럼 보인다. 즉, 하나의 CPU를 2개 이상의 프로그램이 시분할 방식으로 사용하는 병행처리 작업으로 멀티태스킹(multitasking)과 비슷한 의미로 쓰인다.? 프로그램은 처리속도가 입출력장치의 속도에 따라 좌우되는 것과, 입출력은 거의 하지 않고 주로 계산만 하여 중앙처리장치의 속도에 따라 좌우되는 것으로 나뉜다. 전자를 입출력제약(I/O bound) 프로그램이라고 하고, 후자를 중앙처리장치제약(CPU bound) 프로그램이라고 한다. 멀티프로그래밍의 효율을 높이기 위해서는 몇 개의 입출력제약 프로그램과 하나 이상의 중앙처리장치제약 프로그램을 섞어서 처리하는 것이 좋다.? 프로그램 처리는 우선순위에 따라 이루어진다. 한 프로그램이 입출력 대기상태가 되면 다른 프로그램이 CPU를 사용할 수 있도록 전환하고, 입출력 동작이 끝나면 우선순위에 따라서 실행 가능한 프로그램 중에서 하나를 뽑아서 실행한다. 우선순위를 매길 때는 입출력 동작이 많은 작업에 높은 우선순위를, CPU 사용 시간이 긴 작업에는 낮은 우선순위를 준다.? 동시에 처리되는 프로그램의 수를 멀티프로그램의 수준(multiprogramming level) 또는 다중도(degree of multiprogramming)라고 한다. 이처럼 여러 개의 프로그램을 동시에 실행시키려면 운영체제가 기억장치 관리, CPU 사용계획, 주변장치 사용계획, 기억장치 보호 등의 기능을 잘 수행할 수 있어야 한다.
    공학/기술| 2007.03.12| 3페이지| 1,000원| 조회(933)
    미리보기
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 03월 31일 화요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
1:25 오전
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감