📄 os.xml
字号:
<?xml version="1.0"?>
<doc>
<assembly>
<name>OS</name>
</assembly>
<members>
<member name="T:Hanselman.CST352.InstructionCollection">
<summary>
A collection that stores <see cref="T:Hanselman.CST352.Instruction"/> objects.
</summary>
<seealso cref="T:Hanselman.CST352.InstructionCollection"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.#ctor">
<summary>
Initializes a new instance of <see cref="T:Hanselman.CST352.InstructionCollection"/>.
</summary>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.#ctor(Hanselman.CST352.InstructionCollection)">
<summary>
Initializes a new instance of <see cref="T:Hanselman.CST352.InstructionCollection"/> based on another <see cref="T:Hanselman.CST352.InstructionCollection"/>.
</summary>
<param name="value">
A <see cref="T:Hanselman.CST352.InstructionCollection"/> from which the contents are copied
</param>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.#ctor(Hanselman.CST352.Instruction[])">
<summary>
Initializes a new instance of <see cref="T:Hanselman.CST352.InstructionCollection"/> containing any array of <see cref="T:Hanselman.CST352.Instruction"/> objects.
</summary>
<param name="value">
A array of <see cref="T:Hanselman.CST352.Instruction"/> objects with which to intialize the collection
</param>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.Add(Hanselman.CST352.Instruction)">
<summary>
Adds a <see cref="T:Hanselman.CST352.Instruction"/> with the specified value to the
<see cref="T:Hanselman.CST352.InstructionCollection"/> .
</summary>
<param name="value">The <see cref="T:Hanselman.CST352.Instruction"/> to add.</param>
<returns>
The index at which the new element was inserted.
</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.AddRange(Hanselman.CST352.Instruction[])"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.AddRange(Hanselman.CST352.Instruction[])">
<summary>
Copies the elements of an array to the end of the <see cref="T:Hanselman.CST352.InstructionCollection"/>.
</summary>
<param name="value">
An array of type <see cref="T:Hanselman.CST352.Instruction"/> containing the objects to add to the collection.
</param>
<returns>
None.
</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.Add(Hanselman.CST352.Instruction)"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.AddRange(Hanselman.CST352.InstructionCollection)">
<summary>
Adds the contents of another <see cref="T:Hanselman.CST352.InstructionCollection"/> to the end of the collection.
</summary>
<param name="value">
A <see cref="T:Hanselman.CST352.InstructionCollection"/> containing the objects to add to the collection.
</param>
<returns>
None.
</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.Add(Hanselman.CST352.Instruction)"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.Contains(Hanselman.CST352.Instruction)">
<summary>
Gets a value indicating whether the
<see cref="T:Hanselman.CST352.InstructionCollection"/> contains the specified <see cref="T:Hanselman.CST352.Instruction"/>.
</summary>
<param name="value">The <see cref="T:Hanselman.CST352.Instruction"/> to locate.</param>
<returns>
<see langword="true"/> if the <see cref="T:Hanselman.CST352.Instruction"/> is contained in the collection;
otherwise, <see langword="false"/>.
</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.IndexOf(Hanselman.CST352.Instruction)"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.CopyTo(Hanselman.CST352.Instruction[],System.Int32)">
<summary>
Copies the <see cref="T:Hanselman.CST352.InstructionCollection"/> values to a one-dimensional <see cref="T:System.Array"/> instance at the
specified index.
</summary>
<param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the values copied from <see cref="T:Hanselman.CST352.InstructionCollection"/> .</param>
<param name="index">The index in <paramref name="array"/> where copying begins.</param>
<returns>
None.
</returns>
<exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional. -or- The number of elements in the <see cref="T:Hanselman.CST352.InstructionCollection"/> is greater than the available space between <paramref name="arrayIndex"/> and the end of <paramref name="array"/>.</exception>
<exception cref="T:System.ArgumentNullException"><paramref name="array"/> is <see langword="null"/>. </exception>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than <paramref name="array"/>'s lowbound. </exception>
<seealso cref="T:System.Array"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.IndexOf(Hanselman.CST352.Instruction)">
<summary>
Returns the index of a <see cref="T:Hanselman.CST352.Instruction"/> in
the <see cref="T:Hanselman.CST352.InstructionCollection"/> .
</summary>
<param name="value">The <see cref="T:Hanselman.CST352.Instruction"/> to locate.</param>
<returns>
The index of the <see cref="T:Hanselman.CST352.Instruction"/> of <paramref name="value"/> in the
<see cref="T:Hanselman.CST352.InstructionCollection"/>, if found; otherwise, -1.
</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.Contains(Hanselman.CST352.Instruction)"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.Insert(System.Int32,Hanselman.CST352.Instruction)">
<summary>
Inserts a <see cref="T:Hanselman.CST352.Instruction"/> into the <see cref="T:Hanselman.CST352.InstructionCollection"/> at the specified index.
</summary>
<param name="index">The zero-based index where <paramref name="value"/> should be inserted.</param>
<param name=" value">The <see cref="T:Hanselman.CST352.Instruction"/> to insert.</param>
<returns>None.</returns>
<seealso cref="M:Hanselman.CST352.InstructionCollection.Add(Hanselman.CST352.Instruction)"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.GetEnumerator">
<summary>
Returns an enumerator that can iterate through
the <see cref="T:Hanselman.CST352.InstructionCollection"/> .
</summary>
<returns>None.</returns>
<seealso cref="T:System.Collections.IEnumerator"/>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.Remove(Hanselman.CST352.Instruction)">
<summary>
Removes a specific <see cref="T:Hanselman.CST352.Instruction"/> from the
<see cref="T:Hanselman.CST352.InstructionCollection"/> .
</summary>
<param name="value">The <see cref="T:Hanselman.CST352.Instruction"/> to remove from the <see cref="T:Hanselman.CST352.InstructionCollection"/> .</param>
<returns>None.</returns>
<exception cref="T:System.ArgumentException"><paramref name="value"/> is not found in the Collection. </exception>
</member>
<member name="P:Hanselman.CST352.InstructionCollection.Item(System.Int32)">
<summary>
Represents the entry at the specified index of the <see cref="T:Hanselman.CST352.Instruction"/>.
</summary>
<param name="index">The zero-based index of the entry to locate in the collection.</param>
<value>
The entry at the specified index of the collection.
</value>
<exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is outside the valid range of indexes for the collection.</exception>
</member>
<member name="T:Hanselman.CST352.InstructionCollection.InstructionEnumerator">
<summary>
Provided for "foreach" support with this collection
</summary>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.InstructionEnumerator.#ctor(Hanselman.CST352.InstructionCollection)">
<summary>
Public constructor for an InstructionEnumerator
</summary>
<param name="mappings">The <see cref="T:Hanselman.CST352.InstructionCollection"/>we are going to iterate over</param>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.InstructionEnumerator.MoveNext">
<summary>
Move to the next Instruction
</summary>
<returns>true or false based on success</returns>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.InstructionEnumerator.System#Collections#IEnumerator#MoveNext">
<summary>
Move to the next Instruction
</summary>
<returns>true or false based on success</returns>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.InstructionEnumerator.Reset">
<summary>
Reset the cursor
</summary>
</member>
<member name="M:Hanselman.CST352.InstructionCollection.InstructionEnumerator.System#Collections#IEnumerator#Reset">
<summary>
Reset the cursor
</summary>
</member>
<member name="P:Hanselman.CST352.InstructionCollection.InstructionEnumerator.Current">
<summary>
The current <see cref="T:Hanselman.CST352.Instruction"/>
</summary>
</member>
<member name="P:Hanselman.CST352.InstructionCollection.InstructionEnumerator.System#Collections#IEnumerator#Current">
<summary>
The current IEnumerator interface
</summary>
</member>
<member name="T:Hanselman.CST352.Program">
<summary>
Represents a Program (not a <see cref="T:Hanselman.CST352.Process"/>) on disk and the <see cref="T:Hanselman.CST352.Instruction"/>s it's comprised of.
Used as a utility class to load a <see cref="T:Hanselman.CST352.Program"/> off disk.
</summary>
</member>
<member name="M:Hanselman.CST352.Program.#ctor(Hanselman.CST352.InstructionCollection)">
<summary>
Public constructor for a Program
</summary>
<param name="instructionsParam">The collection of <see cref="T:Hanselman.CST352.Instruction"/> objects that make up this Program</param>
</member>
<member name="M:Hanselman.CST352.Program.GetMemoryImage">
<summary>
Spins through the <see cref="T:Hanselman.CST352.InstructionCollection"/> and creates an array of bytes
that is then copied into Memory by <see cref="M:Hanselman.CST352.OS.createProcess(Hanselman.CST352.Program,System.UInt32)"/>
</summary>
<returns>Array of bytes representing the <see cref="T:Hanselman.CST352.Program"/> in memory</returns>
</member>
<member name="M:Hanselman.CST352.Program.LoadProgram(System.String)">
<summary>
Loads a Program from a file on disk. For each line the Program, create an <see cref="T:Hanselman.CST352.Instruction"/>
and pass the raw string to the Instructions's constructor. The resulting <see cref="T:Hanselman.CST352.InstructionCollection"/>
is the Program
</summary>
<param name="fileName">file with code to load</param>
<returns>a new loaded Program</returns>
</member>
<member name="M:Hanselman.CST352.Program.DumpProgram">
<summary>
For Debugging, pretty prints the Instructions that make up this Program
</summary>
</member>
<member name="T:Hanselman.CST352.SystemCall">
<summary>
The delegate (object-oriented function pointer) definition for an OS System Call.
ALl opCodes will be mapped to a function that matches this signature
</summary>
</member>
<member name="T:Hanselman.CST352.OS">
<summary>
The definition of an Operarting System, including a <see cref="T:Hanselman.CST352.MemoryManager"/> and a <see cref="T:Hanselman.CST352.ProcessCollection"/>
</summary>
</member>
<member name="F:Hanselman.CST352.OS.runningProcesses">
<summary>
Contains the <see cref="T:Hanselman.CST352.Process"/> and the <see cref="T:Hanselman.CST352.Process.ProcessControlBlock"/> for all runningProcesses
</summary>
</member>
<member name="F:Hanselman.CST352.OS.currentProcess">
<summary>
Holds a reference to the current running <see cref="T:Hanselman.CST352.Process"/>
</summary>
</member>
<member name="F:Hanselman.CST352.OS.memoryMgr">
<summary>
A reference to the <see cref="T:Hanselman.CST352.MemoryManager"/> Class. A <see cref="T:Hanselman.CST352.Process"/> memory accesses go
through this class.
</summary>
<example>
theOS.memoryMgr[processId, 5]; //accesses memory at address 5
</example>
</member>
<member name="F:Hanselman.CST352.OS.locks">
<summary>
There are 10 locks, numbered 1 to 10. Lock 0 is not used.
We will store 0 when the lock is free, or the ProcessID when the lock is acquired
</summary>
</member>
<member name="F:Hanselman.CST352.OS.events">
<summary>
There are 10 events, numbered 1 to 10. Event 0 is not used
</summary>
</member>
<member name="F:Hanselman.CST352.OS.processIdPool">
<summary>
This counter is incremented as new processes are created.
It provides a unique id for a process. Process Id 0 is assumed to be the OS.
</summary>
</member>
<member name="F:Hanselman.CST352.OS.bDumpInstructions">
<summary>
Do we output debug for Instructions?
</summary>
</member>
<member name="M:Hanselman.CST352.OS.#ctor(System.UInt32)">
<summary>
Public constructor for the OS
</summary>
<param name="virtualMemoryBytes">The number of "addressable" bytes of memory for the whole OS.</param>
</member>
<member name="M:Hanselman.CST352.OS.currentProcessIsEligible">
<summary>
Checks if the <see cref="F:Hanselman.CST352.OS.currentProcess"/> is eligible to run
</summary>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -