Intel® 64 and IA-32 Architectures Software Developer’s Manual 读后感

4834页,虽然有点多,但是还是希望大家能看完。

前些时候训练了一段的的芯片构造,主要实现的是mips和risc-v指令集,后来自己有时间看了看arm,受益匪浅,不得不说,要想一个更好的os,底层离不开高效的硬件支持,所谓“软件不行,硬件出手”正是此道理。

Intel处理器系统:

  • 酷睿(Core)系列,主要4102应用于管理 3D、高级视频和照片编辑,1653玩复杂游戏,享受高分辨率 4K 显示。
  • 奔腾(PenTIum)系列,主要应用于借助功能丰富的处理器,加快便携式 2 合 1 电脑、笔记本电脑、台式机和一体机的速度。
  • 赛扬(Celeron)系列,要应用于借助可靠的性能和高价值,支持基本的消费者应用程序、高清视频和音频以及网页浏览。
  • 至强(Xeon)系列,主要应用于提供云计算,通过数据分析获得实时见解,提高数据中心生产力并轻松进行扩展。
  • 安腾(Itanium)系列,主要应用于为任务关键型应用程序和工作负载带来突破性性能、可靠性、可扩展性和可用性。
  • 凌动(Atom)系列,要应用于适用于移动设备和高能效服务器。在小型封装中获得强大的性能和超长电池续航时间。
  • Quark系列,主要应用于适用于物联网 (IoT) 设备。在小巧外形中获得低功耗、集成的安全性和可扩展架构。

本手册集主要分为四册,第一册是基本架构,第二册是指令集参考,第三册上系统编程手册,第四册上MSR寄存器查阅手册。第一册讲述的偏重硬件架构,第三册偏重软件特性,2和4我在此不列出了,纯纯使用字典。

Volume 1:Basic Architecture

从这个目录看出,对于硬件的SIMD可塑性变成了硬件架构的侧重点(可能是和当今快速发展的人工智能技术有关)。

Chapter 1 — About This Manual

Chapter 2 — Intel® 64 and IA-32 Architectures:介绍Intel 64和IA-32体系结构以及基于这些体系结构的Intel处理器系列

Chapter 3 — Basic Execution Environment:介绍了内存组织模型,并描述了应用程序使用的寄存器集

Chapter 4 — Data Types:描述处理器识别的数据类型和寻址模式;提供实数和浮点格式以及浮点异常的概述

Chapter 5 — Instruction Set Summary:列出所有Intel 64和IA-32指令

Chapter 6 — Procedure Calls, Interrupts, and Exceptions:描述用于进行过程调用以及为中断和异常提供服务的过程堆栈和机制。

Chapter 7 — Programming with General-Purpose Instructions:描述操作基本数据类型、通用寄存器和段寄存器的基本加载和存储、程序控制、算术和字符串指令;还描述在保护模式下执行的系统指令

Chapter 8 — Programming with the x87 FPU:介绍x87 FPU

Chapter 9 — Programming with Intel® MMX™ Technology:介绍MMX

Chapter 10 — Programming with Intel® Streaming SIMD Extensions (Intel® SSE):介绍SSE

Chapter 11 — Programming with Intel® Streaming SIMD Extensions 2 (Intel® SSE2):介绍SSE2

Chapter 12 — Programming with Intel® Streaming SIMD Extensions 3 (Intel® SSE3), Supplemental Streaming SIMD Extensions 3 (SSSE3), Intel® Streaming SIMD Extensions 4 (Intel® SSE4) and Intel® AES New Instructions (Intel® AES-NI):介绍SSE3

Chapter 13 — Managing State Using the XSAVE Feature Set:描述XSAVE特性集说明

Chapter 14 — Programming with AVX, FMA and AVX2:AVX FMA AVX2技术

Chapter 15 — Programming with Intel® AVX-512:AVX-512技术

Chapter 16 — Programming with Intel Transactional Synchronization Extensions:描述支持锁省略技术的指令扩展,以提高具有争用锁的多线程软件的性能

Chapter 17 — Intel® Memory Protection Extensions:内存保护

Chapter 18 — Control-flow Enforcement Technology:提供控制流实施技术(CET)的概述

Chapter 19 — Input/Output:输入和输出

Chapter 20 — Processor Identification and Feature Determination:给出了为SSE/SSE2/SSE3浮点指令生成的异常编写异常处理程序的指导原则。

Volume 3:System Programming Guide

对于第三册,我主要将其分为五部分,即:

  • 系统结构(chapter 2 - chapter 7):系统架构,保护模式,分页模型,中断与异常处理,任务管理
  • 多核系统(chapter 8 - chapter 11):多处理器管理,处理器管理和初始化,APIC中断可编程,缓存一致性
  • 系统管理(chapter 12 - chapter 22):电源和热量管理,机器自检架构,调试,分支,执行检测……
  • 虚拟化技术(chapter 23 - chapter 30):VMX,VM,VM APIC,VMCS,VMM
  • 软件防卫安全(chapter 33 - chapter 39):SGX技术,Enclave技术

可以看出,大多数篇幅主要侧重于虚拟化技术和安全技术(不过也不知道是不是该手册的年限原因,感觉很多技术已经被抛弃了,而新技术没有写上去)

Chapter 1 — About This Manual

Chapter 2 — System Architecture Overview:系统架构

Chapter 3 — Protected-Mode Memory Management:保护模式内存管理

Chapter 4 — Paging:分页模型

Chapter 5 — Protection:段保护

Chapter 6 — Interrupt and Exception Handling:中断和异常处理

Chapter 7 — Task Management:任务管理

Chapter 8 — Multiple-Processor Management:多处理器管理

Chapter 9 — Processor Management and Initialization:处理器管理和初始化

Chapter 10 — Advanced Programmable Interrupt Controller (APIC):APIC

Chapter 11 — Memory Cache Control:内存和缓存控制

Chapter 12 — Intel® MMX™ Technology System Programming:MMX技术系统编程

Chapter 13 — System Programming For Instruction Set Extensions And Processor Extended States

Chapter 14 — Power and Thermal Management

Chapter 15 — Machine-Check Architecture

Chapter 16 — Interpreting Machine-Check Error Codes

Chapter 17 — Debug, Branch Profile, TSC, and Resource Monitoring Features

Chapter 18 — Last Branch Records

Chapter 19 — Performance Monitoring

Chapter 20 — 8086 Emulation

Chapter 21 — Mixing 16-Bit and 32-Bit Code

Chapter 22 — IA-32 Architecture Compatibility

Chapter 23 — Introduction to Virtual Machine Extensions:虚拟机扩展

Chapter 24 — Virtual Machine Control Structures:虚拟机控制结构

Chapter 25 — VMX Non-Root Operation:non-root运行机制

Chapter 26 — VM Entries:vm entry

Chapter 27 — VM Exits:vm exit

Chapter 28 — VMX Support for Address Translation:vmx对地质翻译的支持

Chapter 29 — APIC Virtualization and Virtual Interrupts:APIC虚拟化和虚拟中断

Chapter 30 — VMX Instruction Reference:vmx指令参考

Chapter 31 — System Management Mode:系统管理模式

Chapter 32 — Intel® Processor Trace

Chapter 33 — Introduction to Intel ® Software Guard Extensions

Chapter 34 — Enclave Access Control and Data Structures

Chapter 35 — Enclave Operation

Chapter 36 — Enclave Exiting Events

Chapter 37 — SGX Instruction References

Chapter 38 — Intel ® SGX Interactions with IA32 and Intel ® 64 Architecture

Chapter 39 — Enclave Code Debug and Profiling

猜你喜欢

转载自blog.csdn.net/qq_48322523/article/details/127675670