当错误与内存访问无关时,是否有错误列表显示为"segfaults"? [英] Is there a list of errors will show up as `segfaults` when they are not really related to memory access?

查看:80
本文介绍了当错误与内存访问无关时,是否有错误列表显示为"segfaults"?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

此问题中,我了解到试图如果不在环0中运行特权指令,可能会导致在用户进程中出现segfault的问题,我有两个后续问题.

In this question, I learned that attempting to run privileged instructions when not in ring 0 can cause what looks like a segfault in a user process, and I have two follow-up questions.

  1. 所有特权指令是否都是这样?
  2. 还有哪些其他类型的错误可能导致伪造的段错误,但与尝试读取内存无关?

推荐答案

通读指令集参考,查看在哪里列出了#GP的非内存问题.不完整的列表:CLICLTSHLTININT(带有无效向量),INVDINVLPGIRET(在某些情况下),LDMXCSR(设置保留位),LGDTLIDTLLDTLMSWLTRMONITOR(带有ECX != 0),MOV(至CRxDRx),(无效的ECX),OUTRDMSRRDPMCSWAPGSSYSEXITSYSRETWBINVDWRMSRXGETBV(无效的ECX) ,XRSTORXSETBV

Read through the instruction set reference and see where #GP is listed for a non-memory issue. Incomplete list: CLI, CLTS, HLT, IN, INT (with an invalid vector), INVD, INVLPG, IRET (under circumstances), LDMXCSR(setting reserved bits), LGDT, LIDT, LLDT, LMSW, LTR, MONITOR (with ECX != 0), MOV (to CRx or DRx), MWAIT (with invalid ECX), OUT, RDMSR, RDPMC, SWAPGS, SYSEXIT, SYSRET, WBINVD, WRMSR, XGETBV (invalid ECX), XRSTOR, XSETBV

这篇关于当错误与内存访问无关时,是否有错误列表显示为"segfaults"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆