⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memmodel.t

📁 RTEMS (Real-Time Executive for Multiprocessor Systems) is a free open source real-time operating sys
💻 T
字号:
@c@c  COPYRIGHT (c) 1988-2002.@c  On-Line Applications Research Corporation (OAR).@c  All rights reserved.@c@c  $Id: memmodel.t,v 1.6 2002/01/17 21:47:46 joel Exp $@c@chapter Memory Model@section IntroductionA processor may support any combination of memorymodels ranging from pure physical addressing to complex demandpaged virtual memory systems.  RTEMS supports a flat memorymodel which ranges contiguously over the processor's allowableaddress space.  RTEMS does not support segmentation or virtualmemory of any kind.  The appropriate memory model for RTEMSprovided by the targeted processor and related characteristicsof that model are described in this chapter.@section Flat Memory ModelRTEMS supports the i386 protected mode, flat memorymodel with paging disabled.  In this mode, the i386automatically converts every address from a logical to aphysical address each time it is used.  The i386 usesinformation provided in the segment registers and the GlobalDescriptor Table to convert these addresses.  RTEMS assumes theexistence of the following segments:@itemize @bullet@item a single code segment at protection level (0) whichcontains all application and executive code.@item a single data segment at protection level zero (0) whichcontains all application and executive data.@end itemizeThe i386 segment registers and associated selectorsmust be initialized when the initialize_executive directive isinvoked.  RTEMS treats the segment registers as system registersand does not modify or context switch them.This i386 memory model supports a flat 32-bit addressspace with addresses ranging from 0x00000000 to 0xFFFFFFFF (4gigabytes).  Each address is represented by a 32-bit value andis byte addressable.  The address may be used to reference asingle byte, half-word (2-bytes), or word (4 bytes).RTEMS does not require that logical addresses mapdirectly to physical addresses, although it is desirable in manyapplications to do so.  If logical and physical addresses arenot the same, then an additional selector will be required soRTEMS can access the Interrupt Descriptor Table to installinterrupt service routines.  The selector number of this segmentis provided to RTEMS in the CPU Dependent Information Table.By not requiring that logical addresses map directlyto physical addresses, the memory space of an RTEMS applicationcan be separated from that of a ROM monitor.  For example, onthe Force Computers CPU386, the ROM monitor loads applicationprograms into a logical address space where logical address0x00000000 corresponds to physical address 0x0002000.  On thisboard, RTEMS and the application use virtual addresses which donot map to physical addresses.RTEMS assumes that the DS and ES registers containthe selector for the single data segment when a directive isinvoked.   This assumption is especially important whendeveloping interrupt service routines.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -