Package
Class
Tree
Deprecated
Index
Help
PREV NEXT
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
G
H
I
J
L
M
N
O
P
R
S
T
U
V
W
A
AddressErrorException
- Static variable in class nachos.machine.
Machine
The exception generated when an unaligned reference is made, or a reference is made to an address that is beyond the end of the address space.
B
BadVAddrReg
- Static variable in class nachos.machine.
Machine
The failing virtual address on a page fault exception.
base
- Variable in class nachos.machine.
SegmentDescriptor
The base address of the segment in physical memory.
BLOCKED
- Static variable in class nachos.machine.
NachosThread
Status of a thread that is waiting for some event to occur.
BusErrorException
- Static variable in class nachos.machine.
Machine
The exception generated when translation results in an invalid physical address.
bytesToInt(byte[], int)
- Static method in class nachos.machine.
Disk
Utility method to deserialize a sequence of bytes into an integer.
bytesToShort(byte[], int)
- Static method in class nachos.machine.
RK05Disk
Utility method to deserialize a sequence of two bytes into a short.
C
cancel()
- Method in class nachos.machine.
Timer
Cancel the timer object.
Console
- Class in
nachos.machine
This class defines a hardware console device.
contents
- Variable in class nachos.machine.
Packet
The contents of this packet, excluding the header.
D
debugger()
- Static method in class nachos.machine.
Machine
Primitive debugger for user programs.
DefaultInterval
- Static variable in class nachos.machine.
Timer
Default (average) time between timer interrupts, in ticks.
dirty
- Variable in class nachos.machine.
TranslationEntry
This bit is set by the hardware every time the page is modified.
Disk
- Class in
nachos.machine
This class defines a physical disk I/O device.
Disk(String, InterruptHandler)
- Constructor for class nachos.machine.
Disk
Create a simulated disk.
dst
- Variable in class nachos.machine.
Packet
The address of the destination of this packet.
dumpState()
- Static method in class nachos.machine.
Machine
Print the user program's CPU state.
E
enableDebugging()
- Static method in class nachos.machine.
Machine
Turn on user-program debugging, which is off by default.
ExceptionHandler
- Interface in
nachos.machine
This is the interface implemented by an object registered by the OS as a handler for machine exceptions that occur while executing in user mode.
exceptionNames
- Static variable in class nachos.machine.
Machine
Names of the different types of exceptions -- for debugging.
G
getChar()
- Method in class nachos.machine.
Console
Read a character from the input buffer, assuming there is one.
getLevel()
- Static method in class nachos.machine.
Interrupt
Determine the current interrupt level.
getName()
- Method in class nachos.machine.
NachosThread
Get the name of this thread.
getSegmentTable()
- Static method in class nachos.machine.
Machine
Obtain access to the segment table, if any.
getStatus()
- Method in class nachos.machine.
NachosThread
Method used to get the current status of a thread.
getTLB()
- Static method in class nachos.machine.
Machine
Obtain access to the TLB, if any.
guiConsole(InterruptHandler, InterruptHandler)
- Static method in class nachos.machine.
Console
Factory method for creating a GUIConsole.
guiConsole()
- Static method in class nachos.machine.
Console
Factory method for creating a GUIConsole operating in PIO mode.
H
halt()
- Static method in class nachos.machine.
Interrupt
Shut down Nachos cleanly, printing out performance statistics.
handleException(int)
- Method in interface nachos.machine.
ExceptionHandler
Method called by the machine when an exception occurs.
handleInterrupt()
- Method in interface nachos.machine.
InterruptHandler
Method called by the machine when an interrupt occurs.
handleInterrupt()
- Method in class nachos.machine.
Timer
headerLength
- Static variable in class nachos.machine.
Packet
The number of bytes in a packet header.
HiReg
- Static variable in class nachos.machine.
Machine
Double register to hold the result of multiplication.
I
idle()
- Static method in class nachos.machine.
Interrupt
Routine called when there is nothing in the ready queue.
IllegalInstrException
- Static variable in class nachos.machine.
Machine
The exception generated by an attempt to execute an unimplemented or reserved (privileged) instruction.
init(String[])
- Static method in class nachos.machine.
Machine
Initialize the simulation of user program execution.
Interrupt
- Class in
nachos.machine
This class provides methods by which the OS can control the interrupt-handling features of the CPU.
Interrupt()
- Constructor for class nachos.machine.
Interrupt
InterruptHandler
- Interface in
nachos.machine
This is the interface implemented by the object registered by a device driver as a handler for interrupts caused by the managed device.
interval
- Variable in class nachos.machine.
Timer
(Average) time between timer interrupts for this timer.
IntOff
- Static variable in class nachos.machine.
Interrupt
Interrupts can be disabled (IntOff) or enabled (IntOn)
IntOn
- Static variable in class nachos.machine.
Interrupt
Interrupts can be disabled (IntOff) or enabled (IntOn)
intToBytes(int, byte[], int)
- Static method in class nachos.machine.
Disk
Utility method to serialize an integer into a sequence of bytes.
isInputAvail()
- Method in class nachos.machine.
Console
Poll the console to see if there is an input character available.
isOutputBusy()
- Method in class nachos.machine.
Console
Poll the console to see if it is busy outputting a character.
J
JUST_CREATED
- Static variable in class nachos.machine.
NachosThread
Status of a thread that has just been created and is not yet runnable.
L
LoadReg
- Static variable in class nachos.machine.
Machine
The register target of a delayed load.
LoadValueReg
- Static variable in class nachos.machine.
Machine
The value to be loaded by a delayed load.
LoReg
- Static variable in class nachos.machine.
Machine
M
Machine
- Class in
nachos.machine
This class defines the simulated host workstation hardware, as seen by user programs -- the CPU registers, main memory, etc.
Machine()
- Constructor for class nachos.machine.
Machine
mainMemory
- Static variable in class nachos.machine.
Machine
Physical memory to store user program, code and data, while executing.
MalformedPacketException
- Exception in
nachos.machine
Thrown when a malformed packet is processed.
MalformedPacketException()
- Constructor for exception nachos.machine.
MalformedPacketException
Allocate a new
MalformedPacketException
.
maxContentsLength
- Static variable in class nachos.machine.
Packet
The maximum number of content bytes (not including the header).
maxNumMach
- Static variable in class nachos.machine.
Packet
Upper limit on the number of machines.
maxPacketLength
- Static variable in class nachos.machine.
Packet
The maximum length, in bytes, of a packet that can be sent or received on the network.
MemorySize
- Static variable in class nachos.machine.
Machine
The total number of bytes of RAM on the system.
N
nachos.machine
- package nachos.machine
NachosThread
- Class in
nachos.machine
Nachos threads class.
NachosThread(String, Runnable)
- Constructor for class nachos.machine.
NachosThread
Create a new Nachos thread object.
NachosThread(String)
- Constructor for class nachos.machine.
NachosThread
Create a new Nachos thread object, without specifying an entry point.
Network
- Class in
nachos.machine
Network that provides ordered, reliable delivery of limited-size packets to other machines on the nachos network.
Network(byte, InterruptHandler, InterruptHandler)
- Constructor for class nachos.machine.
Network
Create a new nachos network.
networkID
- Static variable in class nachos.machine.
Network
The address of the network.
NextPCReg
- Static variable in class nachos.machine.
Machine
Next program counter (for branch delay).
NoException
- Static variable in class nachos.machine.
Machine
Not an exception -- everything OK!
NumCylinders
- Static variable in class nachos.machine.
RK05Disk
Number of cylinders per disk.
NumExceptionTypes
- Static variable in class nachos.machine.
Machine
The number of different types of exceptions.
NumGPRegs
- Static variable in class nachos.machine.
Machine
Total number (32) of general purpose registers on MIPS.
NumHeads
- Static variable in class nachos.machine.
RK05Disk
Number of surfaces per cylinder (i.e.
NumPhysPages
- Static variable in class nachos.machine.
Machine
The number of pages of RAM on the system.
NumSectors
- Static variable in class nachos.machine.
Disk
Total number of sectors per disk.
NumSectors
- Static variable in class nachos.machine.
RK05Disk
Total number of sectors per disk.
NumSegments
- Static variable in class nachos.machine.
Machine
Size of the segment table.
NumTotalRegs
- Static variable in class nachos.machine.
Machine
The total number of registers.
NumTracks
- Static variable in class nachos.machine.
Disk
Number of tracks per disk.
NumTracks
- Static variable in class nachos.machine.
RK05Disk
Number of tracks per disk.
O
OverflowException
- Static variable in class nachos.machine.
Machine
The exception generated when an integer overflow occurs in add or sub.
P
Packet
- Class in
nachos.machine
A link-layer packet.
Packet(int, int, byte[])
- Constructor for class nachos.machine.
Packet
Allocate a new packet to be sent, using the specified parameters.
Packet(byte[])
- Constructor for class nachos.machine.
Packet
Allocate a new packet using the specified array of bytes received from the network.
packetBytes
- Variable in class nachos.machine.
Packet
This packet, as an array of bytes that can be sent on a network.
PageFaultException
- Static variable in class nachos.machine.
Machine
The exception generated when a program accesses an unmapped page.
PageSize
- Static variable in class nachos.machine.
Machine
The size of a page is set equal to the disk sector size, for simplicity.
PCReg
- Static variable in class nachos.machine.
Machine
Current program counter.
physicalPage
- Variable in class nachos.machine.
TranslationEntry
The page number in real memory (relative to the start of "mainMemory")
PrevPCReg
- Static variable in class nachos.machine.
Machine
Previous program counter (for deuggin).
printSector(boolean, int, byte[])
- Static method in class nachos.machine.
Disk
Dump the data in a disk read/write request, for debugging.
printSector(boolean, int, byte[])
- Static method in class nachos.machine.
RK05Disk
Dump the data in a disk read/write request, for debugging.
putChar(char)
- Method in class nachos.machine.
Console
Write a character to the simulated display and return.
R
R31
- Static variable in class nachos.machine.
Machine
Register 31.
readOnly
- Variable in class nachos.machine.
SegmentDescriptor
If this bit is set, the user program is not allowed to modify the contents of the segment.
readOnly
- Variable in class nachos.machine.
TranslationEntry
If this bit is set, the user program is not allowed to modify the contents of the page.
ReadOnlyException
- Static variable in class nachos.machine.
Machine
The exception generated when a program attempts a write to a page marked "read-only".
readRegister(int)
- Static method in class nachos.machine.
Machine
readRequest(int, byte[], int)
- Method in class nachos.machine.
Disk
Called to submit a request to read a single disk sector.
readRequest(int, byte[], int)
- Method in class nachos.machine.
RK05Disk
Called to submit a request to read a single disk sector.
READY
- Static variable in class nachos.machine.
NachosThread
Status of a thread that is ready to use the CPU but not now running.
receive()
- Method in class nachos.machine.
Network
Return the next packet received.
restoreState()
- Method in class nachos.machine.
NachosThread
Restore the state of a thread on a context switch.
RetAddrReg
- Static variable in class nachos.machine.
Machine
Register that holds return address for procedure calls.
RK05Disk
- Class in
nachos.machine
This version of the Disk class simulates a physical disk device with the geometry (203 cylinders, 2 heads, 12 sectors per track, 512 bytes per sector) of the old RK05 disk packs used on PDP-11 minicomputers in the mid-1970s.
RK05Disk(String, InterruptHandler)
- Constructor for class nachos.machine.
RK05Disk
Create a simulated disk.
run()
- Static method in class nachos.machine.
Machine
Simulate the execution of a user-level program on Nachos.
RUNNING
- Static variable in class nachos.machine.
NachosThread
Status of the thread that is currently using the CPU.
S
saveState()
- Method in class nachos.machine.
NachosThread
Save the state of a thread on a context switch.
SectorSize
- Static variable in class nachos.machine.
Disk
Number of bytes per disk sector.
SectorSize
- Static variable in class nachos.machine.
RK05Disk
Number of bytes per disk sector.
SectorsPerTrack
- Static variable in class nachos.machine.
Disk
Number of sector per disk track.
SectorsPerTrack
- Static variable in class nachos.machine.
RK05Disk
Number of sector per disk track.
SegmentDescriptor
- Class in
nachos.machine
This class defines an entry in a segment table.
SegmentDescriptor()
- Constructor for class nachos.machine.
SegmentDescriptor
SegmentSize
- Static variable in class nachos.machine.
Machine
Maximum size of a segment.
send(Packet)
- Method in class nachos.machine.
Network
Send another packet.
setHandler(ExceptionHandler)
- Static method in class nachos.machine.
Machine
Method called by the OS to register an exception handler to be used when a machine exception occurs in user mode.
setLevel(int)
- Static method in class nachos.machine.
Interrupt
Change interrupts to be enabled or disabled, and if interrupts are being enabled, advance simulated time by calling OneTick().
setPageTable(TranslationEntry[])
- Static method in class nachos.machine.
Machine
Install a new page table for address translation.
setRunnable(Runnable)
- Method in class nachos.machine.
NachosThread
This method is used to set the entry point for a NachosThread.
setStatus(int)
- Method in class nachos.machine.
NachosThread
Method used to set the current status (ready, running, blocked, etc.) of a thread.
shortToBytes(short, byte[], int)
- Static method in class nachos.machine.
RK05Disk
Utility method to serialize a short into a sequence of two bytes.
SIGN_BIT
- Static variable in class nachos.machine.
Machine
Bitmask defining the position of the sign bit.
size
- Variable in class nachos.machine.
SegmentDescriptor
The size of the segment in bytes.
src
- Variable in class nachos.machine.
Packet
The address of the source of this packet.
StackReg
- Static variable in class nachos.machine.
Machine
User's stack pointer.
stats
- Static variable in class nachos.machine.
Machine
Collect statistics.
stop()
- Method in class nachos.machine.
Console
Stop the console, disabling interrupt handlers.
streamConsole(String, String, InterruptHandler, InterruptHandler)
- Static method in class nachos.machine.
Console
Factory method for creating a StreamConsole.
streamConsole(String, String)
- Static method in class nachos.machine.
Console
Factory method for creating a StreamConsole operating in PIO mode.
switchTo(NachosThread)
- Method in class nachos.machine.
NachosThread
This method is used by the Scheduler to switch execution to a new thread.
SyscallException
- Static variable in class nachos.machine.
Machine
The exception generated when a program executes a SYSCALL instruction.
T
TERMINATED
- Static variable in class nachos.machine.
NachosThread
Setting the status of a thread to this causes it to terminate.
Timer
- Class in
nachos.machine
This class emulates a hardware timer device.
Timer(String, InterruptHandler, int, boolean)
- Constructor for class nachos.machine.
Timer
Initialize a hardware timer device that will generate periodic, possibly randomized, interrupts with a specified average interval.
Timer(String, InterruptHandler, boolean)
- Constructor for class nachos.machine.
Timer
Initialize a hardware timer device that will generate periodic, possibly randomized, interrupts at a default average interval.
Timer(String, InterruptHandler, int)
- Constructor for class nachos.machine.
Timer
Initialize a hardware timer device that will generate periodic interrupts at a specified interval.
Timer(String, InterruptHandler)
- Constructor for class nachos.machine.
Timer
Initialize a hardware timer device that will generate periodic interrupts at the default interval.
TLBSize
- Static variable in class nachos.machine.
Machine
Number of entries in the TLB.
TranslationEntry
- Class in
nachos.machine
This class defines an entry in a translation table -- either in a page table or a TLB.
TranslationEntry()
- Constructor for class nachos.machine.
TranslationEntry
U
use
- Variable in class nachos.machine.
TranslationEntry
This bit is set by the hardware every time the page is referenced or modified.
V
valid
- Variable in class nachos.machine.
SegmentDescriptor
If this bit is not set, the segment is ignored.
valid
- Variable in class nachos.machine.
TranslationEntry
If this bit is not set, the translation is ignored.
virtualPage
- Variable in class nachos.machine.
TranslationEntry
The page number in virtual memory.
W
writeRegister(int, int)
- Static method in class nachos.machine.
Machine
writeRequest(int, byte[], int)
- Method in class nachos.machine.
Disk
Called to submit a request to write a single disk sector.
writeRequest(int, byte[], int)
- Method in class nachos.machine.
RK05Disk
Called to submit a request to write a single disk sector.
A
B
C
D
E
G
H
I
J
L
M
N
O
P
R
S
T
U
V
W
Package
Class
Tree
Deprecated
Index
Help
PREV NEXT
FRAMES
NO FRAMES
All Classes