58 LOS_DL_LIST_FOR_EACH_ENTRY(space, aspaceList,
LosVmSpace, node) {
66 (VOID)
LosBufPrintf(seqBuf,
"\r\n PID aspace name base size pages \n");
67 (VOID)
LosBufPrintf(seqBuf,
" ---- ------ ---- ---- ----- ----\n");
68 (VOID)
LosBufPrintf(seqBuf,
" %-4d %#010x %-10.10s %#010x %#010x %d\n",
71 "\r\n\t region name base size mmu_flags pages pg/ref\n");
73 "\t ------ ---- ---- ---- --------- ----- -----\n");
75 RB_SCAN_SAFE(&space->
regionRbTree, pstRbNode, pstRbNodeNext)
79 if (flagsStr == NULL) {
82 (VOID)
LosBufPrintf(seqBuf,
"\t %#010x %-19.19s %#010x %#010x %-15.15s %4d %4d\n",
84 region->
range.
size, flagsStr, regionPages, pssPages);
87 RB_SCAN_SAFE_END(&space->
regionRbTree, pstRbNode, pstRbNodeNext)
UINT32 LOS_MemFree(VOID *pool, VOID *ptr)
释放从指定动态内存中申请的内存
UINT8 * m_aucSysMem0
异常交互动态内存池地址的起始地址,当不支持异常交互特性时,m_aucSysMem0等于m_aucSysMem1。
int LosBufPrintf(struct SeqBuf *seqBuf, const char *fmt,...)
支持可变参数 写 buf
LosProcessCB * OsGetPIDByAspace(LosVmSpace *space)
通过虚拟空间获取进程实体
UINT32 OsCountRegionPages(LosVmSpace *space, LosVmMapRegion *region, UINT32 *pssPages)
统计虚拟空间中某个线性区的页数
CHAR * OsArchFlagsToStr(const UINT32 archFlags)
const CHAR * OsGetRegionNameOrFilePath(LosVmMapRegion *region)
INT32 OsRegionOverlapCheck(LosVmSpace *space, LosVmMapRegion *region)
UINT32 OsCountAspacePages(LosVmSpace *space)
统计虚拟空间的总页数
STATIC INLINE STATUS_T LOS_MuxAcquire(LosMux *m)
STATIC INLINE STATUS_T LOS_MuxRelease(LosMux *m)
LosMux * OsGVmSpaceMuxGet(VOID)
LOS_DL_LIST * LOS_GetVmSpaceList(VOID)
获取进程空间链表指针 g_vmSpaceList中挂的是进程空间 g_kVmSpace, g_vMallocSpace,所有用户进程的空间(独有一个进程空间)
CHAR processName[OS_PCB_NAME_LEN]
虚拟空间,每个进程都有一个属于自己的虚拟内存地址空间