Skip to content
WU Yijie edited this page Dec 14, 2017 · 12 revisions

Welcome to the OSProject wiki!

Notes on Project 1

  • Eclipse run configuration:
    1. set main class to nacho.machine.Machine.
    2. set program arguments -d t to print thread debug information.

* Nachos code: 1. ThreadedKernel.initialize() creates new KThread (_main_ #0), and the first KThread will fork an idle KThread (_idle_ #1) that runs when other threads all blocked. 2. In KThread.fork(), if the interrupt has already been disabled(e.g., when _idle_ forks), then it will still be disabled after restore(). 3. Before calling `sleep()`, the interrupt should be disabled. And the method `begin()` (called in `runThread()`) will restore the interrupt.

Notes on Project 2

  • Eclipse run configuration:
    1. set program arguments -d ma to print debug info, and -x [program].coff to excecute a specified user program.
  • Nachos code:
    1. The interface FileSystem is implemented in nachos.machine.StubFileSystem.

Notes on Project 3

Links

Clone this wiki locally