Linux可以通过系统调用mlock()锁住给定地址范围的内存。由sys_mlock()=>do_mlock()函数实现。

1、创建VMA.

2、设置VM_LOCKED.

3、make_pages_present()函数保证所有的页都在内存中。

mlock函数的2.4内核实现

与之相对应的解锁函数:

munlock()由sys_munlock实现。

与之类似的一对函数:

mlockall()和munlockall()。只不过mlockall()实现对线程内所有的vma的锁定。

相关文章:

  • 2021-06-30
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
  • 2021-08-15
  • 2021-09-09
  • 2021-07-11
猜你喜欢
  • 2022-02-02
  • 2022-01-23
  • 2021-06-26
  • 2021-08-18
  • 2021-09-21
  • 2022-12-23
  • 2021-12-23
相关资源
相似解决方案