• Home
  • Install
  • Cosmos Website
  • Articles
  • API Documentation
Show / Hide Table of Contents
  • Cosmos.Build.Common
    • Architecture
    • BinFormat
    • BochsSupport
    • BuildProperties
    • BuildPropertyNames
    • CompressionType
    • CosmosPaths
    • DebugMode
    • DeploymentType
    • EnumHelper
    • EnumValue
    • Framework
    • IsoMaker
    • LaunchType
    • ProcessExtension
    • PropertiesBase
    • PropertyChangedEventArgs
    • PropertyChangingEventArgs
    • StackCorruptionDetectionLevel
    • TraceAssemblies
    • UsbMaker
    • VMwareEdition
  • Cosmos.Build.Tasks
    • CreateGrubConfig
    • CreateLimineConfig
    • CreateMbr
    • ExtractMapFromElfFile
    • Gzip
    • IL2CPU
    • Launch
    • Ld
    • LimineDeploy
    • MakeIso
    • Nasm
    • OperatingSystem
    • ReadNasmMapToDebugInfo
  • Cosmos.Common
    • BinaryHelper
    • BinaryHelper.BitPos
    • ByteToString
    • NumberHelper
    • StringHelper
  • Cosmos.Common.Extensions
    • ByteConverter
    • ToHexString
  • Cosmos.Core
    • ACPI
    • ACPI.RSDPtr
    • Bootstrap
    • CosmosRuntimeType
    • CPU
    • GCImplementation
    • GCTable
    • Global
    • INTs
    • INTs.EFlagsEnum
    • INTs.ExceptionInterruptDelegate
    • INTs.IRQContext
    • INTs.IRQDelegate
    • INTs.MMXContext
    • INTs.TSS
    • IOPort
    • KernelPanics
    • ManagedMemoryBlock
    • MemoryBlock
    • MemoryBlock08
    • MemoryBlock16
    • MemoryBlock32
    • MemoryMapBlock
    • MemoryOperations
    • PIC
    • PIC.Cmd
    • RawMemoryMapBlock
    • VTable
    • VTablesImpl
  • Cosmos.Core.DebugStub
    • ReferenceHelper
  • Cosmos.Core.IOGroup
    • ATA
    • PIC
    • PS2Controller
  • Cosmos.Core.Memory
    • Heap
    • HeapLarge
    • HeapMedium
    • HeapSmall
    • ObjectGCStatus
    • RAT
    • RAT.PageType
    • RootSMTBlock
    • SMTBlock
    • SMTPage
  • Cosmos.Core.MemoryGroup
    • AHCI
  • Cosmos.Core.Multiboot
    • Multiboot2
  • Cosmos.Core.Multiboot.Tags
    • BasicMemoryInformation
    • EFI64
    • Framebuffer
    • MB2Tag
    • MemoryMap
  • Cosmos.Core_Asm
    • ArrayClearAsm
    • ArrayGetLengthAsm
    • ArrayImpl
    • ArrayInternalCopyAsm
    • BufferBlockCopyAsm
    • BufferImpl
    • CPUCanReadCPUIDAsm
    • CPUDisableINTsAsm
    • CPUEnableINTsAsm
    • CPUGetEBPValue
    • CPUGetEndOfKernelAsm
    • CPUGetESPValue
    • CPUGetStackStart
    • CPUHaltAsm
    • CPUImpl
    • CPUInitFloatAsm
    • CPUInitSSEAsm
    • CPUReadCPUIDAsm
    • CPUReadModelSpecificRegisterAsm
    • CPUReadTimestampCounterAsm
    • CPUSetESPValue
    • CPUUpdateIDTAsm
    • CPUZeroFillAsm
    • DelegateCtorAsm
    • DelegateGetMulticastInvokeAsm
    • DelegateImpl
    • DelegateInvokeAsm
    • GCImplementationImpl
    • IOPortImpl
    • Multiboot2Impl
    • Multiboot2ImplAsm
    • RuntimeHelpersImpl
  • Cosmos.Core_Asm.MemoryOperations
    • MemoryOperationsCopy128BlocksAsm
    • MemoryOperationsCopy128BytesAsm
    • MemoryOperationsCopy16BytesAsm
    • MemoryOperationsCopy32BytesAsm
    • MemoryOperationsCopy64BytesAsm
    • MemoryOperationsFill16BlocksAsm
  • Cosmos.Core_Plugs
    • MathFImpl
    • MemoryOperationsImpl
    • RuntimeFieldHandleImpl
  • Cosmos.Core_Plugs.System
    • ArrayImpl
    • BufferImpl
    • CharUnicodeInfoImpl
    • DelegateImpl
    • DelegateImplInherit
    • EnvironmentImpl
    • EventHandlerImpl
    • ExceptionImpl
    • GCImpl
    • InternalEnvironmentImpl
    • MarvinImpl
    • MulticastDelegateImpl
    • ObjectImpl
    • OutOfMemoryExceptionImpl
    • RuntimeType_RuntimeTypeCache
    • RuntimeTypeHandleImpl
    • RuntimeTypeImpl
    • SRImpl
    • StringImpl
    • TimeZoneInfoOptions
    • TypeImpl
    • WindowsVersionImpl
  • Cosmos.Core_Plugs.System.Buffers
    • ArrayPoolImpl<T>
  • Cosmos.Core_Plugs.System.Collections.Generic
    • ByteComparer
    • ByteEqualityComparer
    • CharComparer
    • CharEqualityComparer
    • ComparerHelpersImpl
    • GuidComparer
    • GuidEqualityComparer
    • Int16Comparer
    • Int16EqualityComparer
    • Int32Comparer
    • Int32EqualityComparer
    • Int64Comparer
    • Int64EqualityComparer
    • ObjectComparer
    • ObjectEqualityComparer
    • SByteComparer
    • SByteEqualityComparer
    • StringComparer
    • StringEqualityComparer
    • UInt16Comparer
    • UInt16EqualityComparer
    • UInt32Comparer
    • UInt32EqualityComparer
    • UInt64Comparer
    • UInt64EqualityComparer
  • Cosmos.Core_Plugs.System.Diagnostics
    • DebuggerImpl
    • StopwatchImpl
  • Cosmos.Core_Plugs.System.Globalization
    • CultureInfoImpl
  • Cosmos.Core_Plugs.System.Resources
    • ResourceManagerImpl
  • Cosmos.Core_Plugs.System.Runtime.CompilerServices
    • RuntimeHelpersImpl
  • Cosmos.Core_Plugs.System.Runtime.InteropServices
    • MarshalImpl
    • NativeMemoryImpl
  • Cosmos.Core_Plugs.System.Threading
    • InterlockedImpl
    • MonitorImpl
  • Cosmos.Core_Plugs.System.Threading.Tasks
    • TaskImpl
  • Cosmos.Debug.Common
    • DictionaryHelper
    • PipeClient
    • PipeServer
  • Cosmos.Debug.DebugConnectors
    • Consts
    • CoreDump
    • DebugConnector
    • DebugConnector.Incoming
    • DebugConnector.Outgoing
    • DebugConnectorEdison
    • DebugConnectorPipeClient
    • DebugConnectorPipeServer
    • DebugConnectorSerial
    • DebugConnectorStreamWithoutTimeouts
    • DebugConnectorStreamWithTimeouts
    • DebugConnectorTCPServer
    • DebugConnectorTestPipeServer
    • Debugger2Windows
    • Ds2Vs
    • Pipes
    • Vs2Ds
    • Windows2Debugger
  • Cosmos.Debug.GDB
    • AsmFile
    • AsmLine
    • BreakpointUC
    • FormBreakpoints
    • FormCallStack
    • FormCallStack.CallStack
    • FormHistory
    • FormLog
    • FormMain
    • FormMain.GdbAsmLine
    • FormRegisters
    • FormRegisters.CPUReg
    • FormSettings
    • FormWatches
    • GDB
    • GDB.Response
    • Global
    • RegNames
    • Settings
    • SettingsDS
    • SettingsDS.BreakpointDataTable
    • SettingsDS.BreakpointRow
    • SettingsDS.BreakpointRowChangeEvent
    • SettingsDS.BreakpointRowChangeEventHandler
    • SettingsDS.GeneralDataTable
    • SettingsDS.GeneralRow
    • SettingsDS.GeneralRowChangeEvent
    • SettingsDS.GeneralRowChangeEventHandler
    • SettingsDS.WatchDataTable
    • SettingsDS.WatchRow
    • SettingsDS.WatchRowChangeEvent
    • SettingsDS.WatchRowChangeEventHandler
    • SettingsDS.WindowDataTable
    • SettingsDS.WindowRow
    • SettingsDS.WindowRowChangeEvent
    • SettingsDS.WindowRowChangeEventHandler
    • WatchUC
    • Windows
  • Cosmos.Debug.Hosts
    • Bochs
    • Host
    • HyperV
    • IntelEdison
    • Qemu
    • Slave
    • VMware
  • Cosmos.Debug.Kernel
    • Debugger
    • DebuggerFactory
  • Cosmos.Debug.Kernel.Plugs.Asm
    • DebugBreak
    • DebugDoSend
    • DebugDoSendComplexLongNumber
    • DebugDoSendComplexNumber
    • DebugDoSendLongNumber
    • DebugDoSendNumber
    • DebuggerAsm
    • DebugSendChannelCommand
    • DebugSendChannelCommandNoData
    • DebugSendMessageBox
    • DebugSendPtr
    • DebugTraceOff
    • DebugTraceOn
    • DoBochsBreak
    • DoRealHalt
  • Cosmos.Deploy.Pixie
    • App
    • DHCP
    • DhcpPacket
    • DhcpPacket.MsgType
    • DhcpPacket.OpType
    • MainWindow
    • TrivialFTP
    • TrivialFTP.OpType
  • Cosmos.Deploy.USB
    • App
    • MainWindow
  • Cosmos.HAL
    • BaudRate
    • Bootstrap
    • CardType
    • ClassID
    • COMPort
    • DataReceivedHandler
    • Device
    • DeviceID
    • Global
    • KeyboardBase
    • KeyboardBase.KeyPressedEventHandler
    • MouseBase
    • MouseBase.MouseChangedEventHandler
    • NetworkDevice
    • PCI
    • PCIBaseAddressBar
    • PCIDevice
    • PCIDevice.Config
    • PCIDevice.DeviceClass
    • PCIDevice.PCIBist
    • PCIDevice.PCICommand
    • PCIDevice.PCIHeaderType
    • PCIDevice.PCIInterruptPIN
    • PCIDeviceBridge
    • PCIDeviceCardbus
    • PCIDeviceNormal
    • PCSpeaker
    • PIT
    • PIT.PITTimer
    • PIT.PITTimer.OnTrigger
    • Power
    • ProgramIF
    • PS2Controller
    • PS2Keyboard
    • PS2Mouse
    • RTC
    • SerialPort
    • SpeakerExtensions
    • SubclassID
    • TextScreen
    • TextScreenBase
    • TextScreenHelpers
    • VendorID
  • Cosmos.HAL.Audio
    • AudioBitDepth
    • AudioBuffer
    • IAudioBufferProvider
    • SampleFormat
  • Cosmos.HAL.BlockDevice
    • AHCI
    • Ata
    • Ata.BusPositionEnum
    • Ata.ControllerIdEnum
    • ATA_PIO
    • ATA_PIO.Cmd
    • ATA_PIO.DvcSelVal
    • ATA_PIO.Ident
    • ATA_PIO.SpecLevel
    • ATA_PIO.Status
    • ATAPI
    • ATAPI.PacketCommands
    • BlockDevice
    • BlockDeviceType
    • EBR
    • EBR.PartInfo
    • GPT
    • GPT.GPartInfo
    • IDE
    • MBR
    • MBR.PartInfo
    • Partition
  • Cosmos.HAL.BlockDevice.Ports
    • SATA
    • SATAPI
    • StoragePort
  • Cosmos.HAL.BlockDevice.Registers
    • AHCISignature
    • ATACommands
    • ATADeviceStatus
    • Base
    • Bases
    • CommandAndStatus
    • CurrentInterfaceSpeedStatus
    • DeviceDetectionStatus
    • FISRegisterD2H
    • FISRegisterH2D
    • FISSize
    • FISType
    • GenericRegisters
    • HBACommandHeader
    • HBACommandTable
    • HBAPRDTEntry
    • InterfacePowerManagementStatus
    • InterruptEnable
    • InterruptStatus
    • PortRegisters
    • PortType
  • Cosmos.HAL.Drivers.Audio
    • AC97
    • AudioDriver
  • Cosmos.HAL.Drivers.Network
    • AMDPCNetII
    • E1000
    • E1000.RXDesc
    • E1000.TXDesc
    • E1000DeviceID
    • RTL8139
  • Cosmos.HAL.Drivers.USB
    • USBHost
  • Cosmos.HAL.Drivers.Video
    • VBEDriver
    • VGADriver
    • VGADriver.ColorDepth
    • VGADriver.ScreenSize
    • VGADriver.TextSize
  • Cosmos.HAL.Drivers.Video.SVGAII
    • Capability
    • FIFO
    • FIFOCommand
    • ID
    • IOPortOffset
    • Register
    • VMWareSVGAII
  • Cosmos.HAL.Network
    • MACAddress
    • NetworkInit
  • Cosmos.IL2CPU
    • _ExceptionRegionInfo
    • _FieldInfo
    • CompilerHelpers
    • CosmosAssembler
    • ExceptionHelper
    • ExceptionHelperRefs
    • GCImplementationRefs
    • ICompilerEngineSettings
    • Il2cpuMethodInfo
    • Il2cpuMethodInfo.TypeEnum
    • ILOp
    • ILOpCode
    • ILOpCode.Code
    • ILReader
    • KernelPanics
    • MethodBaseComparer
    • OpCodeAttribute
    • PlugInfo
    • Program
    • ScannerQueueItem
    • SZArrayImpl<T>
    • VTablesImplRefs
  • Cosmos.IL2CPU.Extensions
    • FieldExtensions
    • TypeExtensions
  • Cosmos.IL2CPU.ILOpCodes
    • Box<T>
    • NullRef
    • OpBranch
    • OpDouble
    • OpField
    • OpInt
    • OpInt64
    • OpMethod
    • OpNone
    • OpSig
    • OpSingle
    • OpString
    • OpSwitch
    • OpToken
    • OpType
    • OpVar
  • Cosmos.IL2CPU.MethodAnalysis
    • ILGroup
    • ILMethod
  • Cosmos.IL2CPU.X86.IL
    • Add
    • Add_Ovf
    • Add_Ovf_Un
    • And
    • Arglist
    • Box
    • Br
    • Branch
    • Break
    • Call
    • Calli
    • Callvirt
    • Castclass
    • Ceq
    • Cgt
    • Cgt_Un
    • Ckfinite
    • Clt
    • Clt_Un
    • Constrained
    • Conv_I
    • Conv_I1
    • Conv_I2
    • Conv_I4
    • Conv_I8
    • Conv_Ovf_I
    • Conv_Ovf_I_Un
    • Conv_Ovf_I1
    • Conv_Ovf_I1_Un
    • Conv_Ovf_I2
    • Conv_Ovf_I2_Un
    • Conv_Ovf_I4
    • Conv_Ovf_I4_Un
    • Conv_Ovf_I8
    • Conv_Ovf_I8_Un
    • Conv_Ovf_U
    • Conv_Ovf_U_Un
    • Conv_Ovf_U1
    • Conv_Ovf_U1_Un
    • Conv_Ovf_U2
    • Conv_Ovf_U2_Un
    • Conv_Ovf_U4
    • Conv_Ovf_U4_Un
    • Conv_Ovf_U8
    • Conv_Ovf_U8_Un
    • Conv_R_Un
    • Conv_R4
    • Conv_R8
    • Conv_U
    • Conv_U1
    • Conv_U2
    • Conv_U4
    • Conv_U8
    • Cpblk
    • Cpobj
    • Div
    • Div_Un
    • Dup
    • Endfilter
    • Endfinally
    • Initblk
    • Initobj
    • Isinst
    • Jmp
    • Ldarg
    • Ldarga
    • Ldc_I4
    • Ldc_I8
    • Ldc_R4
    • Ldc_R8
    • Ldelem
    • Ldelem_I
    • Ldelem_I1
    • Ldelem_I2
    • Ldelem_I4
    • Ldelem_I8
    • Ldelem_R4
    • Ldelem_R8
    • Ldelem_Ref
    • Ldelem_U1
    • Ldelem_U2
    • Ldelem_U4
    • Ldelema
    • Ldfld
    • Ldflda
    • Ldftn
    • Ldind
    • Ldlen
    • Ldloc
    • Ldloca
    • Ldnull
    • Ldobj
    • Ldsfld
    • Ldsflda
    • LdStr
    • Ldtoken
    • Ldvirtftn
    • Leave
    • Localloc
    • Mkrefany
    • Mul
    • Mul_Ovf
    • Mul_Ovf_Un
    • Neg
    • Newarr
    • Newobj
    • Nop
    • Not
    • Or
    • Pop
    • Readonly
    • Refanytype
    • Refanyval
    • Rem
    • Rem_Un
    • Ret
    • Rethrow
    • Shl
    • Shr
    • Shr_Un
    • Sizeof
    • Starg
    • Stelem
    • Stelem_I
    • Stelem_I1
    • Stelem_I2
    • Stelem_I4
    • Stelem_I8
    • Stelem_R4
    • Stelem_R8
    • Stelem_Ref
    • Stfld
    • Stind
    • Stloc
    • Stobj
    • Stsfld
    • Sub
    • Sub_Ovf
    • Sub_Ovf_Un
    • Switch
    • Throw
    • Unaligned
    • Unbox
    • Unbox_Any
    • Volatile
    • Xor
  • Cosmos.System
    • Console
    • ConsoleKeyEx
    • ConsoleKeyExExtensions
    • Durations
    • Global
    • Kernel
    • KeyboardManager
    • KeyEvent
    • KeyEvent.KeyEventType
    • KeyMapping
    • MouseManager
    • MouseState
    • Notes
    • PCSExtensions
    • PCSpeaker
    • Power
    • ScanMapBase
    • VMTools
  • Cosmos.System.Audio
    • AudioManager
    • AudioMixer
    • AudioStream
  • Cosmos.System.Audio.DSP.Processing
    • AudioPostProcessor
    • GainPostProcessor
  • Cosmos.System.Audio.IO
    • AudioBufferReader
    • AudioBufferReadWriteBase
    • AudioBufferWriter
    • MemoryAudioStream
    • SeekableAudioStream
  • Cosmos.System.ExtendedASCII
    • CosmosEncodingProvider
  • Cosmos.System.FileSystem
    • CosmosVFS
    • Disk
    • FileSystem
    • FileSystemFactory
    • ManagedPartition
  • Cosmos.System.FileSystem.FAT
    • FatFileSystemFactory
  • Cosmos.System.FileSystem.FAT.Listing
    • FatDirectoryEntryAttributeConsts
    • FatDirectoryEntryMetadata
    • FatDirectoryEntryMetadata.LongFilenameEntryMetadata
  • Cosmos.System.FileSystem.ISO9660
    • ISO9660FileSystem
    • ISO9660FileSystemFactory
  • Cosmos.System.FileSystem.Listing
    • DirectoryEntry
    • DirectoryEntryTypeEnum
  • Cosmos.System.FileSystem.VFS
    • FileSystemManager
    • VFSBase
    • VFSManager
  • Cosmos.System.Graphics
    • Bitmap
    • Canvas
    • ColorDepth
    • ColorOrder
    • FullScreenCanvas
    • Image
    • ImageFormat
    • Mode
    • SVGAIICanvas
    • VBECanvas
    • VGACanvas
    • VGAScreen
  • Cosmos.System.Graphics.Fonts
    • Font
    • PCScreenFont
    • UnicodeMapping
  • Cosmos.System.Helpers
    • ArrayHelper
  • Cosmos.System.Network
    • EthernetPacket
    • NetworkDebugger
    • NetworkStack
  • Cosmos.System.Network.ARP
    • ARPPacket
  • Cosmos.System.Network.Config
    • DNSConfig
    • IPConfig
    • NetworkConfig
    • NetworkConfiguration
  • Cosmos.System.Network.IPv4
    • Address
    • EndPoint
    • ICMPClient
    • ICMPPacket
    • IPPacket
  • Cosmos.System.Network.IPv4.TCP
    • Flags
    • Status
    • Tcp
    • TcpClient
    • TcpListener
    • TCPOption
    • TCPPacket
    • TransmissionControlBlock
  • Cosmos.System.Network.IPv4.UDP
    • UdpClient
    • UDPPacket
  • Cosmos.System.Network.IPv4.UDP.DHCP
    • DHCPClient
    • DHCPOption
    • DHCPPacket
  • Cosmos.System.Network.IPv4.UDP.DNS
    • DNSAnswer
    • DnsClient
    • DNSPacket
    • DNSPacketAnswer
    • DNSPacketAsk
    • DNSQuery
    • ReplyCode
  • Cosmos.System.ScanMaps
    • DEStandardLayout
    • ESStandardLayout
    • FRStandardLayout
    • GBStandardLayout
    • TRStandardLayout
    • USStandardLayout
  • Cosmos.System_Plugs.System
    • ByteImpl
    • ConsoleImpl
    • ConvertImpl
    • DateTimeImpl
    • DecimalImpl
    • DoubleImpl
    • EnumImpl
    • EnvironmentImpl
    • GuidImpl
    • Int16Impl
    • Int32Impl
    • Int64Impl
    • IntPtrImpl
    • MathImpl
    • RandomImpl
    • SByteImpl
    • SingleImpl
    • TimeSpanImpl
    • TimeZoneInfoImpl
    • UInt16Impl
    • UInt32Impl
    • UInt64Impl
    • UIntPtrImpl
    • ValueTypeImpl
  • Cosmos.System_Plugs.System.Globalization
    • CompareInfoImpl
    • EncodingTableImpl
  • Cosmos.System_Plugs.System.IO
    • DirectoryImpl
    • DirectoryInfoImpl
    • DriveInfoImpl
    • FileImpl
    • FileInfoImpl
    • FileLoadExceptionImpl
    • FileNotFoundExceptionImpl
    • FileStreamImpl
    • FileSystemInfoImpl
    • PathImpl
    • PathInternalImpl
    • StreamReaderImpl
    • StreamWriterImpl
    • TextWriterImpl
    • UnmanagedMemoryStreamImpl
  • Cosmos.System_Plugs.System.Runtime
    • RuntimeHelpersImpl
  • Cosmos.System_Plugs.System.Runtime.InteropServices
    • SafeHandleImpl
  • Cosmos.System_Plugs.System.Text
    • CodePage
    • DecoderReplacementFallbackBufferImpl
    • EncodingImpl
  • Cosmos.System_Plugs.System.Threading
    • AppDomainTimerSafeHandleImpl
    • CancellationTokenSourceImpl
    • SpinWaitImpl
    • ThreadImpl
  • Cosmos.System2_Plugs.System.Threading
    • TimerImpl
  • Cosmos.TestRunner
    • Assert
    • TestChannelCommandEnum
    • TestController
  • Cosmos.VS.DebugEngine
    • AD7Util
    • AsmSource
    • CmdIDList
  • Cosmos.VS.DebugEngine.AD7.Definitions
    • AD7_HRESULT
  • Cosmos.VS.DebugEngine.AD7.Impl
    • AD7BoundBreakpoint
    • AD7BreakpointResolution
    • AD7DocumentContext
    • AD7Engine
    • AD7Expression
    • AD7MemoryAddress
    • AD7Module
    • AD7PendingBreakpoint
    • AD7Port
    • AD7PortSupplier
    • AD7Process
    • AD7ProgramProvider
    • AD7StackFrame
    • AD7Thread
    • DebugLocalInfo
  • Cosmos.VS.DebugEngine.Commands
    • BaseDebugCommand
    • DebugCommandExecute
    • DebugCommandHandler
    • DebugCommandHandlerBase
    • DebugExecCommand
    • DebugLaunchCommand
    • DebugLogCommand
  • Cosmos.VS.DebugEngine.Engine.Impl
    • BreakpointManager
    • EngineCallback
    • EngineUtils
    • Operation
    • WorkerThread
  • Cosmos.VS.DebugEngine.Utilities
    • Extensions
    • MessageBox
    • VS
  • Cosmos.VS.ProjectSystem
    • IBootableProperties
  • Cosmos.VS.Windows
    • AsmCode
    • AsmComment
    • AsmLabel
    • AsmLine
    • AssemblyUC
    • ConsoleConsts
    • ConsoleTW
    • ConsoleUC
    • CosmosWindowsPackage
    • DataBytesUC
    • DebuggerChannelUC
    • DebuggerUC
    • Global
    • InternalTW
    • InternalUC
    • MemoryViewUC
    • RegistersControl
    • StackTW
    • StackUC
    • StateStorer
    • ToolWindowPane2
    • ToolWindowPaneChannel
  • DapperExtensions
    • BasePredicate
    • BetweenPredicate<T>
    • BetweenValues
    • ComparePredicate
    • DapperExtensions
    • DapperExtensionsConfiguration
    • DapperImplementor
    • Database
    • ExistsPredicate<TSub>
    • FieldPredicate<T>
    • GetMultiplePredicate
    • GetMultiplePredicate.GetMultiplePredicateItem
    • GridReaderResultReader
    • GroupOperator
    • IBasePredicate
    • IBetweenPredicate
    • IComparePredicate
    • IDapperExtensionsConfiguration
    • IDapperImplementor
    • IDatabase
    • IExistsPredicate
    • IFieldPredicate
    • IMultipleResultReader
    • IPredicate
    • IPredicateGroup
    • IPropertyPredicate
    • ISort
    • Operator
    • PredicateGroup
    • Predicates
    • PropertyPredicate<T, T2>
    • ReflectionHelper
    • SequenceReaderResultReader
    • Sort
  • DapperExtensions.Mapper
    • AutoClassMapper<T>
    • ClassMapper<T>
    • IClassMapper
    • IClassMapper<T>
    • IPropertyMap
    • KeyType
    • PluralizedAutoClassMapper<T>
    • PluralizedAutoClassMapper<T>.Formatting
    • PropertyMap
  • DapperExtensions.Sql
    • ISqlDialect
    • ISqlGenerator
    • MySqlDialect
    • PostgreSqlDialect
    • SqlCeDialect
    • SqlDialectBase
    • SqlGeneratorImpl
    • SqliteDialect
    • SqlServerDialect
  • IL2CPU.API
    • InlineAttribute
    • LabelName
    • ObjectPointerAccess
    • ObjectUtils
    • ObjectUtils.InstanceTypeEnum
    • TargetPlatform
  • IL2CPU.API.Attribs
    • AsmLabel
    • AsmMarker
    • AsmMarker.Type
    • BootEntry
    • DebugStub
    • FieldAccess
    • FieldType
    • ForceIncludeAttribute
    • ManifestResourceStreamAttribute
    • Plug
    • PlugAssembly
    • PlugAssembly.AssemblyType
    • PlugField
    • PlugMethod
  • IL2CPU.Debug.Symbols
    • AssemblyFile
    • CacheHelper<TKey, TValue>
    • DebugInfo
    • DebugInfo.Field_Map
    • DebugInfo.SequencePoint
    • DebugSymbolReader
    • Document
    • FIELD_INFO
    • FIELD_MAPPING
    • INT3Label
    • Label
    • LOCAL_ARGUMENT_INFO
    • LocalTypeGenericContext
    • LocalTypeProvider
    • Method
    • MethodIlOp
    • ObjDump
    • ObjectReader<T>
    • SourceInfo
    • SQL
    • SqliteBulkCopy
  • IL2CPU.Debug.Symbols.Hashing
    • TypeHashingAlgorithms
    • TypeHashingAlgorithms.HashCodeBuilder
  • IL2CPU.Debug.Symbols.Metadata
    • CachingMetadataStringDecoder
    • MetadataHelper
  • IL2CPU.Debug.Symbols.Pdb
    • ILSequencePoint
    • PdbSymbolReader
    • PortablePdbSymbolReader
    • UnmanagedPdbSymbolReader
  • NASM
    • Program
  • Spruce
    • CodePoint
  • Spruce.Attribs
    • EmitterAttribute
    • GroupTokenAttribute
  • Spruce.Tokens
    • All
    • Alpha
    • AlphaNum
    • AlphaNumList
    • CharacterLiteral
    • Compound
    • Num
    • Num08u
    • Num16u
    • Num32u
    • ObjectList<T>
    • OpAnd
    • OpAt
    • OpCaret
    • OpCloseBrace
    • OpCloseBracket
    • OpCloseParen
    • OpColon
    • OpEquals
    • OpMinus
    • OpOpenBrace
    • OpOpenBracket
    • OpOpenParen
    • OpPercent
    • OpPipe
    • OpPlus
    • OpSlashBack
    • OpSlashFwd
    • OpStar
    • OpTilde
    • Root
    • StringList
    • StringLiteral
    • Token
    • Token.Action
    • Token.Chars
  • XSharp
    • AsmGenerator
    • AsmGenerator.FlagBool
    • Compiler
    • Compiler.Block
    • Compiler.BlockList
    • Compiler.BlockType
    • Extensions
    • Parser
    • Parser.CharType
    • Token
    • TokenList
    • TokenPatterns
    • TokenPatterns.Block
    • TokenPatterns.Blocks
    • TokenPatterns.CodeFunc
    • TokenPatterns.Pattern
    • TokenType
    • XS
    • XS.FPU
    • XS.SSE
    • XS.SSE2
    • XS.SSE3
    • XSRegisters
    • XSRegisters.Register
    • XSRegisters.Register16
    • XSRegisters.Register32
    • XSRegisters.Register8
    • XSRegisters.RegisterFPU
    • XSRegisters.RegisterSegment
    • XSRegisters.RegisterSize
    • XSRegisters.RegisterXMM
  • XSharp.Assembler
    • Assembler
    • AssemblerMethod
    • BaseAssemblerElement
    • Comment
    • DataEndIfDefined
    • DataIfDefined
    • DataIfNotDefined
    • DataMember
    • Define
    • ElementReference
    • Else
    • EndIfDefined
    • IDefine
    • IEndIfDefined
    • IfDefined
    • IfNotDefined
    • IIfDefined
    • IIfNotDefined
    • InfraExtensions
    • Instruction
    • Label
    • LiteralAssemblerCode
    • OpCodeAttribute
    • TypeComparer
  • XSharp.Assembler.x86
    • Add
    • AddWithCarry
    • And
    • Call
    • ClearInterruptFlag
    • ClrCarryFlag
    • ClrDirFlag
    • CmpXchg
    • Compare
    • ConditionalJump
    • ConditionalMove
    • ConditionalTestEnum
    • ConvByteToWord
    • CpuId
    • DebugNoop
    • Dec
    • Divide
    • ExternalLabel
    • Halt
    • IDivide
    • IInstructionWithArgument
    • IInstructionWithCondition
    • IInstructionWithDestination
    • IInstructionWithPrefix
    • IInstructionWithSize
    • IInstructionWithSource
    • Imul
    • INC
    • InfraExtensions
    • InFromDX
    • Instruction
    • Instruction.InstructionSize
    • Instruction.InstructionSizes
    • Instruction.OperandMemoryKinds
    • InstructionPrefixes
    • InstructionWithDestination
    • InstructionWithDestinationAndSize
    • InstructionWithDestinationAndSource
    • InstructionWithDestinationAndSourceAndArgument
    • InstructionWithDestinationAndSourceAndSize
    • InstructionWithSize
    • INT
    • INT1
    • INT3
    • Interrupt
    • IRET
    • Jump
    • JumpBase
    • JumpToSegment
    • Lea
    • Lgdt
    • Lidt
    • LoadStatusFlags
    • Mov
    • MoveCR
    • MoveD
    • MoveSignExtend
    • MoveToDR6
    • MoveZeroExtend
    • Movs
    • Multiply
    • Neg
    • Noop
    • Not
    • Or
    • OutToDX
    • Pop
    • Popad
    • Popfd
    • Push
    • Pushad
    • Pushfd
    • Rdmsr
    • Rdtsc
    • Registers
    • RegistersEnum
    • Return
    • RotateLeft
    • RotateRight
    • RotateThroughCarryRight
    • Scas
    • SetByteOnCondition
    • ShiftLeft
    • ShiftLeftArithmetic
    • ShiftLeftDouble
    • ShiftRight
    • ShiftRightArithmetic
    • ShiftRightDouble
    • SignExtendAX
    • Sti
    • Stos
    • Sub
    • SubWithCarry
    • Test
    • Xchg
    • Xor
  • XSharp.Assembler.x86.SSE
    • AddPD
    • AddSD
    • AddSS
    • AndPD
    • AndPS
    • ComparePD
    • ComparePS
    • ComparePseudoOpcodes
    • CompareSD
    • CompareSS
    • ConvertPD2DQAndTruncate
    • ConvertSD2SI
    • ConvertSD2SIAndTruncate
    • ConvertSD2SS
    • ConvertSI2SD
    • ConvertSI2SS
    • ConvertSS2SD
    • ConvertSS2SI
    • ConvertSS2SIAndTruncate
    • DivPD
    • DivPS
    • DivSD
    • DivSS
    • InstructionWithDestinationAndSourceAndPseudoOpcodes
    • MaxSS
    • MinSS
    • MoveAPD
    • MoveAPS
    • MoveDoubleAndDuplicate
    • MoveDoubleAndDupplicate
    • MoveDQA
    • MoveDQU
    • MoveHLPD
    • MoveHLPS
    • MoveHPD
    • MoveHPS
    • MoveLHPS
    • MoveLPD
    • MoveQ
    • MoveSD
    • MoveSS
    • MoveUPD
    • MoveUPS
    • MulPD
    • MulPS
    • MulSD
    • MulSS
    • OrPS
    • Por
    • Psrld
    • Shufps
    • SqrtScalardDouble
    • SSEInit
    • SubPD
    • SubPS
    • SubSD
    • SubSS
    • UnpackLowDouble
    • XorPD
    • XorPS
  • XSharp.Assembler.x86.X86
    • Cmps
  • XSharp.Assembler.x86.X86.SSE
    • AddPS
  • XSharp.Assembler.x86.X86.x87
    • FloatCompareAnd2Pop
    • FloatPushOne
    • FloatPushZero
    • FloatUCompareAnd2Pop
  • XSharp.Assembler.x86.x87
    • FloatABS
    • FloatAdd
    • FloatAddAndPop
    • FloatClearEx
    • FloatCompare
    • FloatCompareAndPop
    • FloatCompareAndSet
    • FloatCompareAndSetAndPop
    • FloatCompareOrderAndSetAndPop
    • FloatCompareOrderSetAndPop
    • FloatConditionalMoveTestEnum
    • FloatCosine
    • FloatDecTopPointer
    • FloatDivide
    • FloatDivideAndPop
    • FloatDivideAndPopReverse
    • FloatDivideReverse
    • FloatFree
    • FloatIncTopPointer
    • FloatInit
    • FloatLoad
    • FloatMul
    • FloatMulAndPop
    • FloatNegate
    • FloatPop
    • FloatPRem
    • FloatPRem1
    • FloatRound
    • FloatSine
    • FloatSqrt
    • FloatStore
    • FloatStoreAndPop
    • FloatSub
    • FloatSubAndPop
    • FloatSubAndPopReverse
    • FloatSubReverse
    • FloatTan
    • FloatTest
    • FloatUCompare
    • FloatUCompareAndPop
    • FloatXchg
    • FXSave
    • FXStore
    • IntAdd
    • IntCompare
    • IntCompareAndPop
    • IntDiv
    • IntDivReverse
    • IntLoad
    • IntMul
    • IntStore
    • IntStoreAndPop
    • IntStoreWithTrunc
    • IntSub
    • IntSubReverse
  • XSharp.Tokens
    • AsKeyword
    • Compare
    • Compare<TLeftValueType, TComparatorType, TRightValueType>
    • CompareConstConst
    • CompareConstInt16
    • CompareConstInt32
    • CompareConstInt8
    • CompareConstVar
    • CompareConstVarAddr
    • CompareInt16Const
    • CompareInt16Int16
    • CompareInt16Var
    • CompareInt32Const
    • CompareInt32Int32
    • CompareInt32Var
    • CompareInt32VarAddr
    • CompareInt8Const
    • CompareInt8Int8
    • CompareInt8Var
    • CompareMem<TLeftValueType, TComparatorType, TRightValueType>
    • CompareReg08Const
    • CompareReg08Reg08
    • CompareReg08Var
    • CompareReg16Const
    • CompareReg16Int16
    • CompareReg16Reg16
    • CompareReg16Var
    • CompareReg32Const
    • CompareReg32Int32
    • CompareReg32Reg32
    • CompareReg32Var
    • CompareReg8Int8
    • CompareRegConst
    • CompareRegVar
    • CompareRegVarAddr
    • CompareVar
    • CompareVarAddrConst
    • CompareVarAddrInt32
    • CompareVarAddrVar
    • CompareVarAddrVarAddr
    • CompareVarConst
    • CompareVarInt16
    • CompareVarInt32
    • CompareVarInt8
    • CompareVarVar
    • CompareVarVarAddr
    • CompareWithMem
    • Const
    • ConstKeyword
    • FunctionKeyword
    • GotoKeyword
    • Identifier
    • If
    • Int08u
    • Int16u
    • Int32u
    • Interrupt
    • NamespaceKeyword
    • NOP
    • Num
    • OpBitwise
    • OpComment
    • OpCompare
    • OpIncDec
    • OpInclude
    • OpLiteral
    • OpMath
    • OpPureComparators
    • OpRotate
    • OpShift
    • PopAll
    • PortKeyword
    • PushAll
    • Reg
    • Reg08
    • Reg16
    • Reg32
    • Repeat
    • Return
    • Size
    • TestKeyword
    • Times
    • Variable
    • VariableAddress
    • VarKeyword
    • While
    • ZeroParamOp
  • XSharp.x86
    • Map
    • OpCode
    • Register
    • Register.Names
  • XSharp.x86.Assemblers
    • Assembler
    • NASM
  • XSharp.x86.Emitters
    • AllEmitters
    • Assignments
    • BitwiseEmitters
    • Branching
    • Comments
    • Emitters
    • IncrementDecrement
    • Math
    • Namespace
    • Ports
    • PushPop
    • ShiftRotate
    • Test
    • ZeroParamOps
  • XSharp.x86.Params
    • Address
    • i08u
    • i16u
    • i32u
    • Identifier
    • List
    • MemoryAddress
    • Num
    • Param
    • Reg
    • Reg08
    • Reg16
    • Reg32
    • RegisterAddress
    • Root
    • Size

Class Tcp

Used to manage the TCP state machine. Handle received packets according to current TCP connection Status. Also contains TCB (Transmission Control Block) information.

Inheritance
System.Object
Tcp
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Cosmos.System.Network.IPv4.TCP
Assembly: Cosmos.System2.dll
Syntax
public class Tcp
Remarks

See RFC 793 for more information.

Constructors

| Improve this Doc View Source

Tcp(UInt16, UInt16, Address, Address)

Declaration
public Tcp(ushort localPort, ushort remotePort, Address localIp, Address remoteIp)
Parameters
Type Name Description
System.UInt16 localPort
System.UInt16 remotePort
Address localIp
Address remoteIp

Fields

| Improve this Doc View Source

LocalEndPoint

The local end-point.

Declaration
public EndPoint LocalEndPoint
Field Value
Type Description
EndPoint
| Improve this Doc View Source

RemoteEndPoint

The remote end-point.

Declaration
public EndPoint RemoteEndPoint
Field Value
Type Description
EndPoint
| Improve this Doc View Source

Status

The connection status.

Declaration
public Status Status
Field Value
Type Description
Status
| Improve this Doc View Source

TcpWindowSize

The TCP window size.

Declaration
public const ushort TcpWindowSize = 8192
Field Value
Type Description
System.UInt16

Methods

| Improve this Doc View Source

ProcessCloseWait(TCPPacket)

Process Close_WAIT Status.

Declaration
public void ProcessCloseWait(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

Packet to receive.

| Improve this Doc View Source

ProcessClosing(TCPPacket)

Process CLOSING Status.

Declaration
public void ProcessClosing(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

Packet to receive.

| Improve this Doc View Source

ProcessEstablished(TCPPacket)

Processes a ESTABLISHED state TCP packet.

Declaration
public void ProcessEstablished(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

The received packet.

| Improve this Doc View Source

ProcessFinWait1(TCPPacket)

Process FIN_WAIT1 Status.

Declaration
public void ProcessFinWait1(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

Packet to receive.

| Improve this Doc View Source

ProcessFinWait2(TCPPacket)

Process FIN_WAIT2 Status.

Declaration
public void ProcessFinWait2(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

Packet to receive.

| Improve this Doc View Source

ProcessListen(TCPPacket)

Processes a TCP LISTEN state packet and updates the connection status accordingly.

Declaration
public void ProcessListen(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

The incoming TCP packet.

Remarks

This method handles various types of incoming TCP packets during the LISTEN state and updates the status of the connection accordingly. If an RST packet is received, the packet is passed and no action is taken. If a FIN packet is received, the TCP connection is closed. If an ACK packet is received, the TCP connection is established. If a SYN packet is received, the TCP connection is moved to the SYN_RECEIVED state and an empty packet with the SYN and ACK flags set is sent back.

| Improve this Doc View Source

ProcessSynReceived(TCPPacket)

Processes a TCP SYN_RECEIVED state packet and updates the connection status accordingly.

Declaration
public void ProcessSynReceived(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

The incoming TCP packet.

Remarks

This method handles an incoming TCP packet during the SYN_RECEIVED state and updates the status of the connection accordingly. If an ACK packet is received with a valid AckNumber, the TCP connection is established. If the AckNumber is invalid, a reset packet is sent back with the AckNumber set to the invalid value.

| Improve this Doc View Source

ProcessSynSent(TCPPacket)

Processes a SYN_SENT state TCP packet and updates the connection state accordingly.

Declaration
public void ProcessSynSent(TCPPacket packet)
Parameters
Type Name Description
TCPPacket packet

The TCP packet to process.

Remarks

If the packet has the SYN flag set, the method sets the initial receive sequence number and responds with an ACK packet if the ACK flag is also set. If the SYN flag is set but not the ACK flag, the method closes the connection and sends an error message. If the packet has only the ACK flag set, the method checks whether the acknowledgment number is within the valid range and updates the send and receive sequence numbers. If the packet has the FIN flag set, the method closes the connection. If the packet has the RST flag set, the method also closes the connection and sends an error message.

  • Improve this Doc
  • View Source
☀
☾
In This Article
Back to top
☀
☾