📄 os.xml
字号:
</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.MemoryManager">
<summary>
The MemoryManager for the <see cref="T:Hanselman.CST352.OS"/>. All memory accesses by a <see cref="T:Hanselman.CST352.Process"/>
go through this class.
</summary>
<example>
theOS.memoryMgr[processId, 5]; //accesses memory at address 5
</example>
</member>
<member name="F:Hanselman.CST352.MemoryManager.virtualMemSize">
<summary>
Total ammount of addressable memory. This is set in the Constructor.
Once set, it is readonly
</summary>
</member>
<member name="M:Hanselman.CST352.MemoryManager.#ctor(System.UInt32)">
<summary>
</summary>
<param name="virtualMemSizeIn"></param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.ProcessHeapAlloc(Hanselman.CST352.Process,System.UInt32)">
<summary>
</summary>
<param name="p">The Process</param>
<param name="bytesRequested">The number of bytes requested. Will be rounded up to the nearest page</param>
<returns>The Start Address of the Alloc'ed memory</returns>
</member>
<member name="F:Hanselman.CST352.MemoryManager.memoryClearInt">
<summary>
For debugging only. The value used to "zero out" memory when doing a FreeMemory.
</summary>
</member>
<member name="M:Hanselman.CST352.MemoryManager.ProcessHeapFree(Hanselman.CST352.Process,System.UInt32)">
<summary>
Releases pages that were Alloc'ed from the Process's Heap
</summary>
<param name="p">The Processes</param>
<param name="startAddr">The Process address that the allocation began at</param>
<returns></returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.CreateHeapTableForProcess(Hanselman.CST352.Process)">
<summary>
Adds all the pages allocated to a Process's heap to a PCB specific table of memory pages
</summary>
<param name="p">The Process</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.getUIntFrom(System.UInt32,System.UInt32)">
<summary>
Gets a 4 byte unsigned integer (typically an opCode param) from memory
</summary>
<param name="processid">The calling processid</param>
<param name="processIndex">The address in memory from the Process's point of view</param>
<returns></returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.setUIntAt(System.UInt32,System.UInt32,System.UInt32)">
<summary>
Sets a 4 byte unsigned integer (typically an opCode param) to memory
</summary>
<param name="processid">The calling processid</param>
<param name="processIndex">The address in memory from the Process's point of view</param>
<param name="avalue">The new value</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.getBytesFrom(System.UInt32,System.UInt32,System.UInt32)">
<summary>
Gets an array of "length" bytes from a specific process's memory address
</summary>
<param name="processid">The calling process's id</param>
<param name="processIndex">The address in memory from the Process's point of view</param>
<param name="length">how many bytes</param>
<returns>an initialized byte array containing the contents of memory</returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.setBytesAt(System.UInt32,System.UInt32,System.Byte[])">
<summary>
Sets an array of bytes to a specific process's memory address
</summary>
<param name="processid">The calling processid</param>
<param name="processIndex">The address in memory from the Process's point of view</param>
<param name="pageValue">The source array of bytes</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.ProcessAddrToPhysicalAddr(System.UInt32,System.UInt32,System.Boolean)">
<summary>
Translates a Process's address space into physical address space
</summary>
<param name="processid">The calling process's id</param>
<param name="processMemoryIndex">The address in memory from the Process's point of view</param>
<param name="dirtyFlag">Whether we mark this <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> as dirty or not</param>
<returns>The physical address of the memory we requested</returns>
<exception cref="T:Hanselman.CST352.MemoryException">This process has accessed memory outside it's Process address space</exception>
</member>
<member name="M:Hanselman.CST352.MemoryManager.ResetPage(Hanselman.CST352.MemoryManager.MemoryPage)">
<summary>
Resets a memory page to defaults, deletes that page's swap file and
may mark the page as free in physical memory
</summary>
<param name="page">The <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> to reset</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.VirtualAddrToPhysical(Hanselman.CST352.MemoryManager.MemoryPage,System.UInt32)">
<summary>
</summary>
<param name="page"></param>
<param name="virtualIndex"></param>
<returns></returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.BytesToPages(System.UInt32)">
<summary>
Helper method to translate # of bytes to # of Memory Pages
</summary>
<param name="bytes">bytes to translate</param>
<returns>number of pages</returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.ReleaseMemoryOfProcess(System.UInt32)">
<summary>
Takes a Process's ID and releases all MemoryPages assigned to it, zeroing and reseting them
</summary>
<param name="pid">Process ID</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.SetMemoryOfProcess(System.UInt32,System.UInt32,System.UInt32,System.Byte)">
<summary>
Zeros out memory belonging to a Process from start until length
</summary>
<param name="pid">Process ID</param>
<param name="start">start memory address</param>
<param name="length">length in bytes</param>
<param name="newvalue">the new value of the byte</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.MapSharedMemoryToProcess(System.UInt32,System.UInt32)">
<summary>
Maps the shared memory region to the process passed in
</summary>
<param name="memoryRegion">the number of the shared region to map</param>
<param name="pid">Process ID</param>
<returns>the index in process memory of the shared region</returns>
</member>
<member name="M:Hanselman.CST352.MemoryManager.MapMemoryToProcess(System.UInt32,System.UInt32)">
<summary>
Takes a number of bytes and a process id and assigns MemoryPages in the pageTable to the Process
</summary>
<param name="bytes"># of bytes to assign</param>
<param name="pid">Process ID</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.SwapOut(Hanselman.CST352.MemoryManager.MemoryPage)">
<summary>
Swaps the specified <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> to disk. Currently implemented as XML for fun.
</summary>
<param name="victim">The <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> to be swapped</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.SwapIn(Hanselman.CST352.MemoryManager.MemoryPage)">
<summary>
Swaps in the specified <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> from disk. Currently implemented as XML for fun.
</summary>
<param name="winner">The <see cref="T:Hanselman.CST352.MemoryManager.MemoryPage"/> that is being swapped in</param>
</member>
<member name="M:Hanselman.CST352.MemoryManager.PageFaultsForProcess(Hanselman.CST352.Process)">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -