コード例 #1
0
ファイル: MultiBoot.cs プロジェクト: gitter-badger/lonos
        /// <summary>
        /// Gets the memory map index location.
        /// </summary>
        /// <param name="index">The index.</param>
        /// <returns></returns>
        private static MultiBootMemoryMap *GetMemoryMapIndexLocation(uint index)
        {
            MultiBootMemoryMap *location = (MultiBootMemoryMap *)MemoryMapStart;

            for (uint i = 0; i < index; i++)
            {
                location = location->Next;
            }
            return(location);
        }
コード例 #2
0
ファイル: Multiboot.cs プロジェクト: yonglehou/MOSA-Project
        /// <summary>
        /// Counts the memory map.
        /// </summary>
        private static void CountMemoryMap()
        {
            memoryMapCount = 0;
            MultiBootMemoryMap *location = (MultiBootMemoryMap *)MemoryMapStart;

            while ((uint)location < (MemoryMapStart + MemoryMapLength))
            {
                memoryMapCount++;
                //location = (MultiBootMemoryMap*)(((uint)location) + location->size + 4);
                location = location->Next;
            }
        }