crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianStructuresLib/MemoryModel/TMemoryModelRegion.cs
changeset 0 818e61de6cd1
equal deleted inserted replaced
-1:000000000000 0:818e61de6cd1
       
     1 /*
       
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 * 
       
    14 * Description:
       
    15 *
       
    16 */
       
    17 using System;
       
    18 
       
    19 #region MOVING MEMORY MODEL
       
    20 // 00000000-003FFFFF	Unmapped
       
    21 // 00400000-2FFFFFFF	Moving process data
       
    22 // 30000000-3FFFFFFF	DLL static data (=phys ram size/2 up to 128M, always ends at 40000000)
       
    23 // 40000000-5FFFFFFF	RAM drive
       
    24 // 60000000-60001FFF	Super page/CPU page
       
    25 // 61000000-61003FFF	Page directory (16K)
       
    26 // 61020000-6103FFFF	Page table info (4096 * 8bytes = 32K)
       
    27 // 61100000-611FFFFF	Cache flush area
       
    28 // 61200000-612FFFFF	Alternate cache flush area
       
    29 // 62000000-623FFFFF	Page tables (up to 4096 * 1K)
       
    30 // 63000000-63FFFFFF	Primary I/O mappings
       
    31 // 64000000-64FFFFFF	Kernel .data/.bss, initial stack, kernel heap
       
    32 // 65000000-655FFFFF	fixed processes - usually 2 or 3Mb each.
       
    33 // 65600000-F1FFFFFF	Kernel section (includes extra I/O mappings)
       
    34 // F2000000-F3FFFFFF	Kernel code (RAM size/2)
       
    35 // F4000000-F7FFFFFF	User code (RAM size)
       
    36 // F8000000-FFEFFFFF	ROM
       
    37 // FFF00000-FFFFFFFF	Exception vectors
       
    38 #endregion
       
    39 #region MULTIPLE MEMORY MODEL 
       
    40 // Linear address map (1Gb configuration):
       
    41 // 00000000-003FFFFF	Unmapped
       
    42 // 00400000-1FFFFFFF	Local data
       
    43 // 20000000-3BFFFFFF	Shared data
       
    44 // 3C000000-3DFFFFFF	RAM loaded code (=phys ram size up to 256M)
       
    45 // 3E000000-3FFFFFFF	DLL static data (=phys ram size/2 up to 128M)
       
    46 // 40000000-7FFFFFFF	Unused
       
    47 //
       
    48 // 80000000-8FFFFFFF	ROM
       
    49 // 90000000-9FFFFFFF	User Global Area
       
    50 // A0000000-BFFFFFFF	RAM drive
       
    51 // C0000000-C0001FFF	Super page/CPU page
       
    52 // C0040000-C00403FF	ASID info (256 ASIDs)
       
    53 // C0080000-C00FFFFF	Page table info	
       
    54 // C1000000-C13FFFFF	Page directories (up to 256 * 16KB)
       
    55 // C2000000-C5FFFFFF	Page tables
       
    56 // C6000000-C6FFFFFF	Primary I/O mappings
       
    57 // C7000000-C7FFFFFF
       
    58 // C8000000-C8FFFFFF	Kernel .data/.bss, initial stack, kernel heap
       
    59 // C9000000-C91FFFFF	Kernel stacks
       
    60 // C9200000-FFEFFFFF	Extra kernel mappings (I/O, RAM loaded device drivers)
       
    61 // FFF00000-FFFFFFFF	Exception vectors
       
    62 //
       
    63 //
       
    64 // Linear address map (2Gb configuration):
       
    65 // 00000000-003FFFFF	Unmapped
       
    66 // 00400000-37FFFFFF	Local data
       
    67 // 38000000-3FFFFFFF	DLL static data (=phys ram size/2 up to 128M)
       
    68 // 40000000-6FFFFFFF	Shared data
       
    69 // 70000000-7FFFFFFF	RAM loaded code (=phys ram size up to 256M)
       
    70 //
       
    71 // 80000000-8FFFFFFF	ROM
       
    72 // 90000000-9FFFFFFF	User Global Area
       
    73 // A0000000-BFFFFFFF	RAM drive
       
    74 // C0000000-C0001FFF	Super page/CPU page
       
    75 // C0040000-C00403FF	ASID info (256 ASIDs)
       
    76 // C0080000-C00FFFFF	Page table info	
       
    77 // C1000000-C13FFFFF	Page directories (up to 256 * 16KB)
       
    78 // C2000000-C5FFFFFF	Page tables
       
    79 // C6000000-C6FFFFFF	Primary I/O mappings
       
    80 // C7000000-C7FFFFFF
       
    81 // C8000000-C8FFFFFF	Kernel .data/.bss, initial stack, kernel heap
       
    82 // C9000000-C91FFFFF	Kernel stacks
       
    83 // C9200000-FFEFFFFF	Extra kernel mappings (I/O, RAM loaded device drivers)
       
    84 // FFF00000-FFFFFFFF	Exception vectors
       
    85 #endregion
       
    86 
       
    87 namespace SymbianStructuresLib.MemoryModel
       
    88 {
       
    89     public enum TMemoryModelRegion
       
    90     {
       
    91         // Common
       
    92         EMemoryModelRegionUnmapped = 0,
       
    93         EMemoryModelRegionDLLStaticData,
       
    94         EMemoryModelRegionRAMLoadedCode,
       
    95         EMemoryModelRegionROM,
       
    96         EMemoryModelRegionUserGlobalArea,
       
    97         EMemoryModelRegionRAMDrive,
       
    98         EMemoryModelRegionSuperAndCPUPages,
       
    99         EMemoryModelRegionPageTableInfo,
       
   100         EMemoryModelRegionPageDirectories,
       
   101         EMemoryModelRegionPageTables,
       
   102         EMemoryModelRegionPrimaryIOMappings,
       
   103         EMemoryModelRegionUnknown,
       
   104         EMemoryModelRegionKernelGlobalsInitialStackKernelHeap,
       
   105         EMemoryModelRegionExtraKernelMappings,
       
   106         EMemoryModelRegionExceptionVectors,
       
   107 
       
   108         // Moving
       
   109         EMemoryModelRegionMovingProcessData,
       
   110         EMemoryModelRegionCacheFlushArea,
       
   111         EMemoryModelRegionCacheFlushAreaAlternate,
       
   112         EMemoryModelRegionKernelCode,
       
   113         EMemoryModelRegionFixedProcesses,
       
   114         EMemoryModelRegionUserCode,
       
   115 
       
   116         // Multiple
       
   117         EMemoryModelRegionSharedData,
       
   118         EMemoryModelRegionLocalData,
       
   119         EMemoryModelRegionASIDInfo,
       
   120         EMemoryModelRegionKernelStacks,
       
   121     }
       
   122 }