函数逻辑报告 |
Source Code:mm\nommu.c |
Create Date:2022-07-27 16:02:59 |
Last Modify:2020-03-17 21:26:27 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:add a VMA into a process's mm_struct in the appropriate place in the list* and tree and add to the address space's page tree also if not an anonymous* page* - should be called with mm->mmap_sem held writelocked
函数原型:static void add_vma_to_mm(struct mm_struct *mm, struct vm_area_struct *vma)
返回类型:void
参数:
类型 | 参数 | 名称 |
---|---|---|
struct mm_struct * | mm | |
struct vm_area_struct * | vma |
601 | number of VMAs 自加 |
605 | 如果File we map to (can be NULL). 则 |
608 | i_mmap_lock_write(mapping) |
610 | vma_interval_tree_insert(vma, & i_mmap) |
620 | pvma等于rb_entry(parent, structvm_area_struct, vm_rb) |
629 | 否则如果The first byte after our end addresswithin vm_mm. 小于The first byte after our end addresswithin vm_mm. 则p等于rb_left |
639 | 否则BUG() |
643 | rb_link_node( & vm_rb, parent, p) |
644 | rb_insert_color( & vm_rb, & mm_rb) |
647 | prev = NULL |
651 | __vma_link_list(mm, vma, prev) |
名称 | 描述 |
---|---|
do_mmap | handle mapping creation for uClinux |
split_vma | split a vma into two pieces at address 'addr', a new vma is allocated either* for the first part or the tail. |
shrink_vma | shrink a VMA by removing the specified chunk from either the beginning or* the end |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |