腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
3
回答
/proc/cpuinfo地址大小信息与内存页面大小有何关系?
、
、
标记为-lm的cpu上的cat /proc/cpuinfo给出 address sizes : 36 bits physical, 48 bits virtual 使用确定的页面大小 #include <unistd.h> int getpagesize(void); 给出4096个字节。 使用后一种信息,我会认为系统使用地址的最低有效12位作为偏移量,其余的用于地址转换,通过TLB和页表进行虚拟到物理的转换。 cpuinfo中的信息与页面大小有何关系?
浏览 0
提问于2011-10-30
得票数 5
回答已采纳
1
回答
JS时区偏移错误
、
、
、
好吧,我知道日期和时区在JS中基本上是地狱,但我搞不清楚: 我有一个字符串,它是一个RFC3339日期表示:2020-03-13T19:30:00Z 我在巴黎(UTC+2),所以你会认为LocaleString是2020-03-13 21:30:00,但它显示为2020-03-13T20:30:00。 我是不是漏掉了什么? PS:我使用的是date-fns库,下面是示例代码: const value = '2020-03-13T19:30:00Z'; console.log(value); console.log(utcToZonedTime(valu
浏览 2
提问于2020-07-04
得票数 0
1
回答
sql reporting services未处理的错误,其子报表位于第三级组中。
、
、
、
当我试图将一个子报表放入一个表或列表的第三级组中时,我得到了一个错误(这没关系,同样的错误) 我放了一个干净的子报表,没有数据源,没有参数,只有一个文本框当我把子报表放在第一级或第二级组中没有问题,当我把它放在第三级组(或更高级别)时,我收到一个未处理的错误。
浏览 3
提问于2009-07-15
得票数 0
回答已采纳
10
回答
调试和测试有什么区别?
、
软件测试简介(Ammann & Offutt)在第32页提到了一个5级测试成熟度模型: 0级测试和调试没有区别。 第1级测试的目的是显示软件工作。 第2级测试的目的是显示软件不工作。 测试的目的不是为了证明任何具体的东西,而是为了减少使用软件的风险。 四级测试是帮助所有IT专业人员开发高质量软件的一门精神学科。 尽管它们并没有深入到更多的细节。调试和测试有什么区别?
浏览 0
提问于2011-05-25
得票数 11
回答已采纳
1
回答
linux分页,使用了大量的页表目录
、
、
我读了一本关于Linux虚拟内存的书Mel Gorman。我读到过,Linux支持3级页表: PGD,PMD和PTE。如果我没有记错的话,在较新版本的内核中,有四个页表级别: PUD,但这无关紧要。我有一个合理的问题。为什么Linux开发人员选择3(或4)级页表而不是使用1级?只使用一个全局页表(我指的是每个进程的全局页表)将减少内存引用的数量。 对不起,我的英语不好。
浏览 2
提问于2015-12-21
得票数 0
1
回答
Linux是否对页目录和页表使用自映射?
、
、
、
我之所以问这个问题,是因为我很好奇Linux内核是如何工作的。根据的说法,Windows在其页目录和页表中使用了名为self-map的特殊条目,以便能够操作来自内核虚拟地址空间的页目录/表内容。如果有人熟悉Linux内存管理,请告诉我Linux内核处理这个问题的方式是相似的还是不同的。谢谢。
浏览 1
提问于2011-03-11
得票数 3
回答已采纳
4
回答
DIMMs:单对双对四等级
、
DIMM的“等级”对服务器内存有什么不同?例如,在查看服务器配置时,我看到同一台服务器提供了以下功能: 2GB (1x2GB) Single Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM 2GB (1x2GB) Dual Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM 考虑到单级对双级或双级对四级的选择,总是这样: 更快? 便宜点? 更高的带宽? 下面是( IBM不得不说(第7页)关于这个主题的内容,至少是关于他们的HS22s: 重要的是要确保在每个信道中填充具有适当级别的DIMM,以获得最佳性能。只要有可能,建议
浏览 0
提问于2009-09-29
得票数 56
回答已采纳
1
回答
Linux如何在x86-64中支持超过512 in的虚拟地址范围?
、
、
、
Linux的x86-64用户虚拟地址空间是47位长。这本质上意味着Linux可以映射大约128TB虚拟地址范围的进程。 然而,让我困惑的是,x86-64架构支持ISA定义的每个进程的4级分层页表(排列为基数树)。页表的根只能映射最多512 GB的连续虚拟地址空间。那么Linux如何支持超过512 So的虚拟地址范围呢?它是否为每个进程使用多个页表?如果是,那么对于一个进程,对于任何给定的进程,CR3 (x86-64的寄存器,以包含页表基址的地址)应该包含什么?我是不是遗漏了什么?
浏览 0
提问于2012-06-28
得票数 6
回答已采纳
1
回答
是否可以在linux计算机上查看页表
、
、
最近我读到页表是每个进程的实体,我在想在Linux机器上查看特定进程的页表是可能的吗?我读到在一些寄存器中有对页表的引用?
浏览 3
提问于2014-04-03
得票数 0
1
回答
页表总是在内存中吗?页表会被换出吗?
、
、
我认为页表是由Linux内核维护的,所以页表所需的内存不应该被换出,因为内核没有页故障的事情。但是,如果pgd、pmd、pte表都在主存中并且不会被换出,那么多级分页的意义并不能节省任何内存。 因此,我对页表本身的管理方式感到困惑。
浏览 18
提问于2014-09-10
得票数 3
2
回答
在“分叉”进程的同时,为什么Linux内核要为每个新创建的进程复制内核页表的内容?
、
、
、
、
下面的讨论适用于32位ARM Linux内核。 我注意到在分叉过程中,Linux内核将内核页表(母版页表,即swapper_pg_dir) )的内容复制到每个新创建的进程的页表中。 问题如下: 为什么要费心这么做呢? 为什么所有进程都不能共享内核页表的一个副本(对于32位ARM Linux的higer 1G部件),而不能为每个新创建的进程共享一个交换页表? 这是在浪费记忆吗? 相关源代码(“->”表示函数调用): do_fork -> copy_process --> copy_mm -> dup_mm --> mm_init --> m
浏览 4
提问于2014-12-01
得票数 3
回答已采纳
1
回答
ARM MMU和ARM Linux页表漫游
、
、
我对linux如何利用ARMv7内存管理单元硬件来实现它的3级页表遍历有点困惑。MMU只有2个寄存器ttbr0和ttbr1 (一个用于内核,另一个用于用户空间)。mmu如何知道linux的多级页表漫游? 谢谢,Hvr
浏览 0
提问于2015-01-19
得票数 1
1
回答
如何获取按多列分组后的滑动窗口平均值
、
、
首先,我想按列grouby:name、group和place。然后,我想得到相邻两个月的平均值y。最后,我想将平均值添加到原始数据帧中。 The origin dataframe: import pandas as pd df = pd.DataFrame({"name":["Amy", "Amy", "Amy", "Bob", "Bob", "Bob", "Bob", "Bob", "Bob"],
浏览 6
提问于2019-11-12
得票数 1
回答已采纳
1
回答
Linux分页模型是一种抽象吗?
、
、
、
、
我目前正在阅读理解Linux内核第三版的,我正在阅读关于内存寻址的第2章。首先,这本书涵盖了32位分页、PAE 32位和PSE (我们在这里讨论的是x86 )。更具体地说,线性地址的剖析和什么位是什么表,偏移等.我开始对Linux中的分页模型感到困惑。有一次,这本书谈到了目录、表和偏移位的线性地址(用于PAE的PDPT表),然后我被抛到了"Linux“分页的世界里。现在,在Linux分页中,他们谈到了带有表和偏移量的全局表、上层表和中间表?我不认为x86 MMU分页与这个新的Linux模型有什么关系。如果MMU负责转换(分页)地址,为什么内核也需要这个分页模型?看起来内核应该把它留给M
浏览 9
提问于2022-02-05
得票数 2
回答已采纳
2
回答
每个进程的页表是否包含映射到内核地址空间的条目?
、
在Linux中,每个进程都有一个页表,它将用户地址空间映射到物理页帧。 每个进程的页表是否包含映射到内核地址空间的条目? 如果是,则所有进程的页表映射同一地址中的一个内核镜像。这意味着所有的表都包含相同的内核地址条目。是不是很浪费?
浏览 20
提问于2015-10-23
得票数 1
1
回答
高图表中的树形图第四层不起作用
、
在Highcharts- tree映射中,给出了3个级别。地区-国家-疾病,现在我需要它的第四级。我试着把等级降到两级,它起作用了,但对第四级无效。请告诉我哪里出错了。这就是小提琴 原创小提琴: var data = { 'South-East Asia': { 'Sri Lanka': { 'aaa1':{ 'xyz1':'89.2', 'xyz2':'98.5'
浏览 2
提问于2016-05-02
得票数 0
1
回答
x86平台中KVM卷影页表的处理
、
、
、
、
据我所知,在没有硬件支持来宾虚拟到主机物理地址转换的处理器上,KVM使用影子页表。 当来宾操作系统修改其页表时,会构建并更新影子页表。硬件中是否有修改页表的特殊指令(以x86为例)?除非有特别指示,否则VMM不会有陷阱。在软件中由Linux内核维护的页表不就是另一种数据结构吗?为什么它需要特殊的指令来更新它? 谢谢!
浏览 2
提问于2013-01-06
得票数 8
回答已采纳
1
回答
64位Linux内核如何在兼容性模式下管理32位应用程序的页表?
、
、
目前,我正在读“理解Linux内核”一书。在此,据说: 对于没有物理地址扩展的32位架构,两个分页级别就足够了.Linux本质上消除了和字段,因为它们包含零位。但是,页面上目录和页中间目录在指针序列中的位置保持不变,以便相同的代码可以在32位和64位架构上工作。内核通过将页面上目录和页中间目录中的条目数量设置为1,并将这两个条目映射到的适当条目来为它们保留一个位置。 因此,具有4级分页的64位Linux内核的页表层次结构如下所示: PML4 (Linux: PGD) -> 512 * PDPT (Linux: PUD) -> 512 * PD (Linux: PMD) ->
浏览 0
提问于2018-02-27
得票数 3
1
回答
Linux分页: linux如何折叠页面上目录和页中间目录?
、
、
我正在阅读“理解Linux内核”一书,我想知道Linux如何在3级或2级分页系统中折叠paging或Page中间目录。 根据我的理解: Linux有4级分页功能:页面全局目录、页面上层目录、页面中间目录和页面表。(分页单元)通过分析线性地址中的相应字段并查询相应的页表条目,在页面全局目录中自动定位页面帧。用于2级寻呼系统的、page和Page中间目录都在page中获得一个特定条目。。 这在我看来是自相矛盾的:如果上述三个假设是正确的,就意味着地址翻译将通过以下条目进行: Page Global Directory Entry -> (Singleton) Page Upper Direc
浏览 1
提问于2020-11-28
得票数 0
回答已采纳
1
回答
linux中使用分页的最大进程数
、
我听说linux中的最大进程(任务)数是这样计算的 “线程数=总虚拟内存/(堆栈大小*1024*1024)” 然而,我很好奇,因为页表不能被页出 而且每个进程都需要自己的页表(包括页目录)。 我认为这可能是限制操作系统中进程数量的一个因素。 我是对还是错?
浏览 2
提问于2012-07-16
得票数 0
1
回答
Linux进程的跟踪页表访问
、
、
、
、
我写信询问追踪普通Linux用户应用程序的页表访问(根据每个页表访问的“索引”)的可行性。基本上,我所做的是重新生产这篇研究文章()中提到的开发.特别是,需要记录数据页访问,以用于程序机密的使用和推断。 我了解Linux系统的64位x86架构,页面表的大小是4K.我使用pin ()记录所有虚拟内存访问的地址跟踪。因此,我可以简单地计算每个数据表访问的“索引”,使用以下转换规则吗? index = address >> 15 从4KB = 2 ^ 15开始。这是正确的吗?谢谢您的任何建议或意见。 另外,我想我要指出的一点是,在概念上,我不需要每个数据页表ID的“精确”标识符,而只需
浏览 7
提问于2020-05-05
得票数 0
回答已采纳
2
回答
基于给定标准的记录匹配的存在性计算值- FileMaker Pro 13
如果同一表中有其他(相关的)记录满足给定的一组标准,而不是“0”,我如何在表中写入输出'1‘的计算字段? 更详细地解释了我的问题: 我有一张包含“学生”的桌子,还有一张写着“考试成绩”的桌子。“考试结果”表如下所示: StudentID SubjectID Level Result 3234 1 2 A- 3234 2 4 B+ 4739 1 4 C+ 学生只能通过第二科的四级考试,如果他们也通过了B+或更高的科目1的二级考试。我希望在“学生”表中定义一个字段,
浏览 2
提问于2014-03-18
得票数 0
回答已采纳
3
回答
如何使用正则表达式从字符串中只提取第三级域?
、
、
我是Python新手,目前正在尝试使用正则表达式。我只需要提取有效的三级域。问题是,与有效域一起,我将第四个-level域的一部分作为第三级域。但我不想提取第四级域名,即使是部分。 如何解决这个问题,以及正则表达式中的错误在哪里? My RegEx: (?<=[^\.])\b([A-Za-z]+\://)?((?<=[^\w+\-\-])[A-Za-z0-9]+)(\-[A-Za-z0-9]+)?(\.[A-Za-z0-9]+)(\-[A-Za-z0-9]+)?(\.[A-Za-z]+)(/\w+\.\w+)? regex101 101页面: 谢谢你们的帮助,伙计们! UPD:,
浏览 0
提问于2020-03-09
得票数 0
1
回答
谁决定页表和页面大小?OS还是MMU?
、
随着物理内存容量的变化,页表大小也随之变化,随着进程数的变化,页表大小也随之变化。到底是谁决定的呢?OS还是MMU?如果是操作系统,LINUX和Windows之间有什么不同?
浏览 1
提问于2013-03-21
得票数 1
回答已采纳
2
回答
如何将页表的虚拟地址转换为其实际物理地址?
、
、
如果在OS中启用分页,则使用页表将虚拟地址映射到实际物理地址。更具体地说,考虑X86上的Linux32位操作系统,cr3寄存器具有页面表目录的起始地址。我想这是个虚拟地址。CPU将如何将此虚拟地址映射到RAM中页表目录的物理地址。该地址转换将使用哪个页表?
浏览 2
提问于2015-03-12
得票数 1
回答已采纳
1
回答
wkhtmltopdf复制下一页的表行
我使用Linux上的wkhtmltopdf (AWS )将包含表的HTML转换成一个PDF文件。通常情况下,当表在第1页结束之前开始,到第2页结束时,它工作得很好,但是它有问题。表标题在第2页的一行上重复。 我能做些什么来防止这个问题? $ ./wkhtmltopdf --version wkhtmltopdf 0.12.3-dev-79ff51e (with patched qt)
浏览 0
提问于2018-08-29
得票数 0
1
回答
使用pte_map_offset映射页表
、
我正在做一些linux内核的工作,并且我正在同时迭代三个不同页面目录的页表。当我需要映射页表时,我使用了pte_offset_map。然而,我意识到在启用高内存的情况下,这种方法将不起作用,因为pte_offset_map将尝试使用相同的kmap插槽(在Linux2.6.32中,pte_offset_map使用kmap_atomic )。我看到有一个使用另一个kmap_atomic插槽的pte_offset_map_nested。 但是,我需要一次映射三个不同的页表。我已经想出了一些解决方案,只需要一次映射两个页表(我可以来回交错,同时只映射两个,或者在映射其他两个时临时复制一个页表,等等)但
浏览 3
提问于2011-11-21
得票数 1
1
回答
linux内核中的内存映射
、
在linux内核中,同一物理页帧是否可以同时多次映射到一个进程的虚拟内存空间? 换句话说,在此过程中有多个页表条目指向同一个物理页。
浏览 5
提问于2014-01-24
得票数 2
回答已采纳
1
回答
在vfork()系统调用中不复制页表条目有什么好处?
、
vfork()系统调用的效果与copied.Today ()相同,只是父进程的页表条目不是entries.If,具有复制即写和子运行的优先语义,vfork ()的唯一好处是没有一天复制页表entries.If Linux获得复制到写入页面的表条目,这样就不再有任何好处了。 以下是罗伯特·洛夫( Robert )关于“Linux内核开发”()一书中的几句话。我不明白的是,不复制页面表条目有什么好处? 还有一行内容是:“在copy_process()中,task_struct成员vfork_done设置为NULL”。 这是什么vfork_done?它的功能是什么?
浏览 0
提问于2017-09-09
得票数 0
1
回答
linux中的三层页表
、
我知道linux在内存管理中使用三个级别的页面表。 我对页面的内容感到困惑,table.Does页面表包含下一级页面表、基地址还是包含页面帧号? 如果它包含页帧号,那么如何获得该特定页表的基地址?它存储在哪里? 如果有人向我澄清了这件事,那就太好了。
浏览 1
提问于2012-09-03
得票数 1
回答已采纳
2
回答
Linux中的页表
、
、
、
问题1 :-在引导过程中,Linux创建页表。但是,当执行新进程时,它也有自己的页表。这两个表有什么不同? 问题2:在linear上,x86使用定义良好的方案(包括页目录、页表项等)将线性地址转换为物理地址。假设我们在进程地址空间A中有一个线性地址X,当使用页表进行转换时,它对应于物理地址Y。还有一些其他进程B,它也具有属于它自己的地址空间的有效线性地址X。现在,如果进程B想要访问X,X会再次对应于相同的物理地址Y吗?
浏览 1
提问于2011-01-25
得票数 1
回答已采纳
1
回答
如何扩展(4MB)和常规分页(4KB)共存?
、
、
在x86体系结构中,“扩展分页”允许页帧(物理内存)为4MB而不是4KB。 “理解Linux内核,第3章”第2章“内存寻址”一书“Linux中的寻呼”一节“内核页表”解释说,对于RAM小于896 MB的最终内核页表: ...内核可以通过使用大页面来处理内存(请参阅本章前面的“扩展分页”一节)。 然而,在“扩展寻呼”一节(“硬件分页”)中写着: 扩展分页与常规分页共存。 实际上,我不明白扩展分页和常规分页是如何共存的。请有人解释一下这些问题: 在何种情况下,内核使用4MB页?还是4 KB页? 哪些页面帧大小将用于kmalloc操作?为了vmalloc? 如果我们假设初始代码和数据(内核的段、临时
浏览 0
提问于2012-06-13
得票数 6
1
回答
在x86-64体系结构中分页
、
、
、
、
在操作系统的32位实现中,页表具有固定的结构(页面目录和页表两级)。但是在x86_64系统中,通常有多个层次的页面表实现(4在Linux中)。系统如何知道使用了多少级别?这需要什么命令?我们如何让CPU知道全局页面目录和其他结构?
浏览 2
提问于2015-05-02
得票数 2
1
回答
linux中关于线程的混淆
我知道在线程和处理linux之间没有什么特别的区别,除了在线程切换期间保持cr3寄存器不变,在进程切换期间保持tlb刷新。 由于groud中的线程共享相同的地址空间,并且没有改变pgd(页表),这意味着整个内存布局是共享的,因此堆栈空间也被共享,但根据通用定义线程拥有自己的堆栈,这在linux中是如何实现的。 如果它像threadA一样有来自x-y范围的堆栈,那么在第一个页面缺省发生时,页表被更新,类似地,使用u-v范围的threadB将更新相同的页表。因此,可能会把threadA中的threadB堆栈搞乱。 我只想弄清楚这一点,帮我out.Is一下线程的安全实现?
浏览 1
提问于2011-06-14
得票数 0
2
回答
基于内存管理的linux内核x86分页
、
、
、
、
在linux arch中,x86内核2.6.x,32位系统 我知道虚拟地址0xC0000000 ~ 0xFFFFFFFF 是为内核保留的。 并且该虚拟地址可以被转换为物理地址 减去0xC0000000。 然而,我认为即使结果是一样的,MMU也会翻译 通过遍历页表将内核虚拟地址(如0xC0851000)转换为物理地址。 比如 CR3 ->页目录->页表-> PFN. 我是对的还是错的?如果我错了,请纠正我。 我需要在x86,Linux32位系统中开发基于硬件的内核监视器。 所以我需要知道这个问题 请帮帮忙。
浏览 0
提问于2012-07-23
得票数 2
回答已采纳
1
回答
fork产生的唯一开销是页表复制和进程id创建。
、
、
、
、
fork()产生的惟一开销是复制父进程的页表并为子进程创建唯一的进程描述符。在Linux中,fork()是通过使用写时复制页面实现的。写时复制( COW)是一种延迟或完全阻止数据复制的技术。 那么为什么需要复制页表呢?只要进程以只读模式共享页面,或者直到它们写入某些内容,就不需要复制页表,因为父进程和子进程的转换是相同的。 有人能解释一下..。 提前感谢
浏览 2
提问于2013-05-24
得票数 8
1
回答
页表的条目是表示页面还是线性地址?
我读了“理解linux内核”一书,关于地址转换的话题让我非常困惑。书上说,每个线性地址有三个字段:目录、表和偏移量。“目录”字段与“目录表”相关,“表”字段与“页表”相关。 它没有指出,或者我可能会遗漏的一点是,表中的每个条目是与一页有关,它是一组线性地址,还是与单个线性地址有关。 有人能帮我吗?
浏览 6
提问于2015-04-24
得票数 1
回答已采纳
2
回答
linux内核出现分段故障后会发生什么?
、
、
当我考虑进行网络分页(从远程节点请求出错的分页)时,我得到了这个问题: 首先,让我们考虑以下步骤: 1)用户空间程序试图访问内存X。 2) MMU遍历页表,查找X的物理地址。 3)在遍历页表时,注意到页表条目无效。 4) CPU陷阱并被Linux陷阱向量捕获。(在ARM情况下,但我认为x86也是一样的,对吧?) 5)此时,我可以从远程节点检索适当的数据,复制到某个物理地址,并将其映射到页表中。 6)这里有一个问题:在这一点之后,在X处有页错误的程序是否可以安全地读取数据?那么,这是否意味着MMU或CPU以某种方式记住了有页错误的页表条目,并返回到该条目并继续页表的遍历? 如果有任何步骤不正确,
浏览 8
提问于2013-08-09
得票数 0
1
回答
何时将进程的页表加载到内存中?
、
、
我想知道操作系统何时将特定进程的页表加载到主内存中?是在进程被调度的时候吗?操作系统能够直接将进程页表加载到主存中吗? 我有一个想法:除非处理器生成对应于页面的页面错误,否则任何东西都不会进入主内存。同样的情况也适用于页表吗?或者我的想法是错误的。 PS:如果答案可以具体针对基于Linux的系统,我们会非常感激的。
浏览 0
提问于2016-07-19
得票数 1
1
回答
作者您好,本文中您提到的四级缓存,我有些疑惑?
、
第三级:mmap文件映射缓存;第四级:文件系统缓存。这两级有什么异同?
浏览 214
提问于2019-01-15
1
回答
是否可以将页表的位置更改为另一个NUMA节点?
、
、
、
、
您好,我正在学习linux内核的内存管理。 我的机器有多个NUMA节点,我想知道是否可以将页表的位置从NUMA0更改为NUMA。我研究了一下,在页表初始化时,CR3寄存器有指向页表初始化位置的指针。位置在NUMA 0(第一个NUMA节点)的内存(内核空间)上。 那么在初始化时,我可以将页表的位置设置为NUMA N吗? 如果可能,内核修改是我应该做的全部工作,还是需要做更多的工作? 我使用的是x86_64处理器和centos7.7
浏览 19
提问于2020-10-29
得票数 0
2
回答
PHP:防止Mysql中的重复标记
、
我有这样的标签的MySql表: | id | name | | 1 | Linux | | 2 | Windows | | 3 | Unix | | 4 | Dos | | 5 | FreeBSD | 在“新闻页”中,用户添加如下新标记: Linux,OpenBSD,Test 现在,Linux之前添加了,所以我需要添加ONLY OpenBSD和Table。我的意思是:如果用户标签是新的,如何标记INSERT?!
浏览 5
提问于2014-05-27
得票数 2
回答已采纳
5
回答
如何查找或计算Linux进程的页表大小和其他内核记帐?
、
、
、
如何才能知道Linux进程的页表有多大,以及其他任何可变大小的进程记帐?
浏览 0
提问于2009-05-12
得票数 7
1
回答
共享内存分页和分叉
、
如果父进程与另一个进程共享一些页面,而我们派生了父进程。据我所知,孩子复制页表,我们将页面设置为只读,并执行写入时复制。但如果我们写入共享内存页,这将创建一个共享内存页的副本,这是错误的。Linux内核如何避免这种情况?
浏览 1
提问于2012-11-16
得票数 4
回答已采纳
5
回答
Linux内核有自己的页面表吗?
、
、
不同的进程对于其地址空间有不同的页表。 Linux内核有自己的页面表吗?如果没有,如何将内核的虚拟地址转换为物理内存地址? 在每个进程的地址空间被划分为用户空间和内核空间的意义上,每个进程的页面表是否包含内核的“页表”? 谢谢。 相关页面错误、页面替换和分页是发生在内核上还是仅发生在进程、内核空间还是用户空间?
浏览 0
提问于2018-10-15
得票数 4
1
回答
在ARMv8中,进程的根页表在哪里保存?
、
、
、
、
在ARMv8 Linux中,MMU使用TTBR0_EL1和TTBR1_EL1进行虚拟内存管理。 那么,在ARMv8 Linux中保存的进程的PGD在哪里呢? 在X86中,CR3用于保存进程页表的根,它在进程上下文切换期间进行切换,那么ARMv8中是否有类似的寄存器? 我编写了一个内核模块来检查TTBR0 0/1_EL1中的进程,但是我发现它们在内核模块中是相同的,是不是遗漏了什么? 如何获得特定进程的根页表?
浏览 9
提问于2022-08-18
得票数 1
回答已采纳
2
回答
腾讯云服务器保护是几级?
腾讯云服务器保护网络安全等级是几级
浏览 566
提问于2020-10-14
1
回答
如何在Linux内核中分配巨大的页面
、
我正在学习Linux中的透明大页面(THP)。 我试图打电话给__get_free_pages(GFP_KERNEL|__GFP_COMP, mysize),要求内核为我分配2MB的巨大页面。 所以我想知道: 如果内核真的为我分配了巨大的页面呢? 如何检查分配的页的内核页表,以确保它是巨大的页。
浏览 1
提问于2017-09-14
得票数 4
2
回答
如何让进程的每一页都在页面表中呈现?
、
我在linux上用gcc编译了一个静态程序,并在kvm下运行。我检查了来宾内存中该进程的每个页表条目,发现一些页面已经映射,而一些页面没有映射。这是按需分页的功能吗?我的问题是,是否有一个解决方案,使所有的pte存在并映射到页表中?例如,我派生了一个新的进程并加载了一个新的elf二进制文件,如何使每个页面都映射到这个新进程的页表中。谢谢
浏览 1
提问于2010-07-29
得票数 2
回答已采纳
1
回答
Linux页面表管理与MMU
、
、
、
我有一个关于linux内核和MMU之间的关系的问题。现在我明白了,linux内核管理虚拟内存地址和物理内存地址之间的页表。同时,在x86体系结构中存在MMU,它管理虚拟内存地址和物理内存地址之间的页表。如果MMU出现在CPU附近,内核还需要处理页面表吗? 这个问题可能很愚蠢,但另一个问题是,如果MMU负责内存空间,谁来管理高内存和低内存?我相信内核将从MMU (32位中的4GB)接收虚拟内存的大小,然后内核将区分虚拟地址中的用户空间和内核空间。我说的对吗?还是完全错了? 提前谢谢!
浏览 3
提问于2014-09-24
得票数 10
回答已采纳
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
战略图卡表指导手册下载(共45页)
漫话:MySQL中的行级锁,表级锁,页级锁
超全的 Linux 机器的渗透测试命令备忘表,共16表128条命令
历史有时候惊人的相似,三张表告诉你,我们四级封锁经历了什么
超全的 Linux 机器的渗透测试命令备忘表
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
即时通信 IM
活动推荐
运营活动
广告
关闭
领券