【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-38

文件下载与邀请翻译者

学习英特尔开发手册,最好手里这个手册文件。原版是PDF文件。点击下方链接了解下载方法。

讲解下载英特尔开发手册的文章

翻译英特尔开发手册,会是一件耗时费力的工作。如果有愿意和我一起来做这件事的,那么,欢迎你的加入。

另外,我不仅仅是打算翻译这一种手册,以后,可能还需要去翻译许多的英文技术文档

本节翻译

【原文】The processor does not automatically save the context of the x87 FPU, XMM, and MXCSR registers on a task switch. Instead it sets the TS flag, which causes the processor to raise an #NM exception whenever it encounters an x87 FPU, MMX, SSE, or SSE2 instruction in the instruction stream for the new task (with the exception of the instructions listed above). The fault handler for the #NM exception can then be used to clear the TS flag (with the CLTS instruction) and save the context of the x87 FPU, XMM, and MXCSR registers. If the task never encounters an x87 FPU, MMX, SSE, or SSE2 instruction, the x87 FPU, MMX, SSE, and SSE2 context is never saved.

【翻译】处理器不会在任务切换时自动保存x87 FPU、XMM和MXCSR寄存器的上下文。相反,它会设置TS标志,这将导致处理器在新任务的指令流中遇到x87 FPU、MMX、SSE或SSE2指令时引发#NM异常(上面列出的指令除外)。然后,可以使用#NM异常的错误处理程序清除TS标志(使用CLTS指令),并保存x87 FPU、XMM和MXCSR寄存器的上下文。如果任务从未遇到过x87 FPU / MMX / SSE / SSE2指令,则x87 FPU / MMX / SSE / SSE2 上下文t将永远不会被保存。

相关推荐
star learning white1 小时前
STM32入门学习5
stm32·嵌入式硬件·学习
tangwangbi1 小时前
Linux 系统配置文件:/etc/profile、~/.bashrc 和 ~/.bash_profile 三者之间的区别与作用
linux·运维·bash
蜀道山老天师2 小时前
Shell Bash变量与运算符(含条件测试与流程控制)
linux·运维·bash
Mr.朱鹏2 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
mengge.cloud2 小时前
存储技术基础小白教程
linux·运维·服务器·wpf·存储
tang777893 小时前
反爬虫场景下代理IP池的动态扩容与失效IP自动清理方案实现
linux·服务器·网络·爬虫代理·住宅代理ip
星河单片机4 小时前
STM32驱动HS‑S37A水位传感器+OLED完整实验讲解
stm32·单片机·嵌入式硬件
新时代牛马4 小时前
Linux 系统调用与IPC 完整篇:从syscall 入口、VDSO 到pipe/shm/futex 选型
linux·运维·服务器
代码不接地4 小时前
【EDA】0.公共部分&元件库设计
嵌入式硬件
tju新生代魔迷4 小时前
Verilog HDL 学习笔记(十)| 第10章 时序和延迟
笔记·学习·fpga开发