[운영체제, OS, 시스템 프로그래밍] nachos 커널분석

등록일 2003.09.26 MS 워드 (doc) | 5페이지 | 가격 1,000원

소개글

그렇게 상세하게 하지는 못했습니다. 첫번째 프로젝트라 내용이 그리 어렵진 않지만 수백 라인이 넘는 소스를 분석하느라 잠도 제대로 이루지 못했습니다. 어설프지만 개요를 파악하는데는 도움이 될듯 합니다.

목차

1.System 환경
2.실행결과
3.설치중 시행착오와 해결법
4.소스분석

본문내용

4.2 machine.Machine.main() 메소드 분석
- machine.Machine 클래스는 nachos 실행시 최초 실행되는 master 클래스이다. Main() 메소드의 첫 부분에서 “nachos 5.0j initializing…” 메시지를 출력하고 입력받은 인자(args)를 전달한다.
- 현재 위치와 nachos 가 설치된 위치, test 폴더의 위치를 각각 저장한다.
- ProcessArgs() 메소드를 호출하며 processArgs() 메소드에서 전달받은 인자를 검사하여 각각에 해당하는 메소드를 실행한다.
- Config 클래스를 부르고 nachos.conf 파일을 로드한다.
- NachosSecurityManager 클래스의 getPrivilege 메소드를 실행하여 system mode 를 설정한다.
- CreateDevices() 메소드를 통해 bank, processor, console, filesystem, network 디바이스를 생성한다.
- CheckUserClasses() 메소드를 통해 User 를 체크한다.
- new TCB().start 에서 TCB 객체를 생성하며 이때 AutoGrader.start() 를 실행하여 설정된 privilege와 args 를 가지고 kernel.initialize(args) 호출한다. 그러나 현재 kernel 클래스에는 구현된 메소드가 없으므로 차후 프로젝트에서 kernel initialize 메소드를 구현해야 한다.
- Autograder 를 호출할 때 config 파일에서 kernel.kernel 변수값을 사용하는데 이때 결과적으로 thread.Threadkernel 클래스의 initialize() 메소드를 호출하게 된다. 여기서 Scheduler 를 설정하고 filesystem 을 작성하고 다시 KThread() 객체를 생성한다.
- KThread 객체가 생성될 때 현재 생성된 thread 를 검사하여 생성된 thread 가 없으면 TCB 클래스의 threadroot() 메소드를 privileged 인자와 함께 실행하게 되며 그렇지 않을 때는 createIdleThread() 메소드를 실행한다.
- CreateIdleThread() 메소드는 fork() 메소드를 실행하여 idle 상태로 KThread 객체를 복제하여 새로운 스레드를 생성한다.
- 마지막으로 Machine.interrupt().enable() 메소드를 수행하며 커널 initialize 작업을 끝낸다.
*원하는 자료를 검색 해 보세요.
  • [나초스(nachos)]나초스4.0분석 0페이지
    나초스의 - thread분석 - vitual memory 분석 - Multiprograming 분석 - File System 분석각 파트별 그림과 함수 소스 분석으로 이해를 용이하게함.
  • [운영체제]Nachos 설치 및 소스코드분석 7페이지
    [1] Nachos 시스템 소개 Not Another Completely Heuristic Operating System의 약자로서 U.C..Berkeley 대학의 Tom Anderson 교수가 운영체제 실습을 위해 만든 Operating System 이다. Nacho..
  • Nachos Project Phase 1. Build a Thread System 47페이지
    1.1.1. 경량프로세스 (Light Weight Process LWP)라고 불리기도 하는 CPU 동작의 기본 단위이다. Thread ID, Program Counter, Register Set 그리고 Stack으로 이루어져 있으며 전통적인 Process (Heavy ..
  • nachos소스분석 19페이지
    1. Thread의 생성(create)에서 소멸(delete)까지의 함수 호출 경로(상태 변화 포함) ⓵기능 설명 (Thread Class)쓰레드를 관리하는 루틴이다. 쓰레드를 생석혹은 소멸시키며, 쓰레드가 레디큐에 들어가서 cpu에 할당을 받거나 또는 대기하게 하고..
  • [nachos]나초스 3.4와 4.0비교 분석 14페이지
    nachos-3.4와 4.0의 디렉토리 비교nachos-4.0에 추가된 기능nachos-3.4와 4.0의 지원하는 architecture 비교nachos-3.4와 4.0의 time interrupt에 관한 비교AddrSpace::Addrspace 비교등등 3.4와 4...
  • [운영체제]Nachos 설치 및 실행 레포트 (함수분석 및 테스트프로그램 구현 포함) 0페이지
    □ VM Ware 와 Linux 설치○ 가상기계로 사용한 VM Ware라는 프로그램은 상용 소프트웨어 이므로 정식으로 구입해서 사용해야 합니다.○ http://www.vmware.com 에서 프로그램을 다운받고 30일간 시험적으로 사용해 볼 수 있는 라이센스를 받을수 ..
  • [컴퓨터공학] nachos makefile 및 main.cc 분석 8페이지
    nachos의 make 동작은 크게 3부분으로 이루어져 있다. /code의 Makefile, /code의 Makefile.common, 그리고 각 /code/thread,/code/userprog,/code/network, /code/filesys, /code/vm 의..
더보기

이 자료와 함께 구매한 자료

      최근 구매한 회원 학교정보 보기
      1. 최근 2주간 다운받은 회원수와 학교정보이며
         구매한 본인의 구매정보도 함께 표시됩니다.
      2. 매시 정각마다 업데이트 됩니다. (02:00 ~ 21:00)
      3. 구매자의 학교정보가 없는 경우 기타로 표시됩니다.
      4. 지식포인트 보유 시 지식포인트가 차감되며
         미보유 시 아이디당 1일 3회만 제공됩니다.
      상세하단 배너
      최근 본 자료더보기
      상세우측 배너
      [운영체제, OS, 시스템 프로그래밍] nachos 커널분석