新页面
跳到导航
跳到搜索
(最新 | 最旧) 查看(前50个 | 后50个)(20 | 50 | 100 | 250 | 500)
- 2022年3月28日 (一) 07:50 Detecting CPU Speed (历史 | 编辑) [11,876字节] Zhang3(讨论 | 贡献) (创建页面,内容为“== 什么是CPU速度 == “CPU速度”有几种不同的定义: # 处理器执行代码的速度(例如每秒指令数) # 处理器的时钟运行速度有多快 (例如每秒周期) 其中CPU执行代码的速度对于确定CPU的性能很重要。 而CPU时钟的运行速度仅在特定情况下有用(例如,校准CPU的TSC以用于测量时间)。 对于这些不同的 “CPU速度” 也有几种不同的测量: # 最佳情况(Best case) # 一…”)
- 2022年3月28日 (一) 06:52 PNP Calls In Protected Mode (历史 | 编辑) [1,143字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} 是的,就像PCI bios32调用一样,你可以在保护模式(pmode)下进行PNP调用。 一旦有了BIOS32服务目录(参见PCI示例例程),就可以使用PnP自动配置魔术调用它。再次注意寄存器接口的串联组件。 <source lang="C"> void bios32_scan_pnp_entry(void) { uint32_t cseg_size, offset, base_addr; →调用PCI地址的BIOS32 BSD BSD调用以RETF而非RET终止:…”)
- 2022年3月28日 (一) 06:41 Plug-and-Play (历史 | 编辑) [879字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub} ==资源== 你可以从Microsoft FTP站点的存档中获取官方的即插即用文档 (原始文档自2015年以来已关闭): https://web.archive.org/web/20180116205211/http://ftpmirror.your.org/pub/misc/ftp.microsoft.com/developr/drg/Plug-and-Play/Pnpspecs/ 这些文档是自解压的MS-Word文件,描述BIOS、SCSI、外围设备等上的PNP行业(MS)规范。 你可以将其与本页上的链接结合起来,来自Microsoft大约2003: https…”)
- 2022年3月28日 (一) 06:35 NFS (历史 | 编辑) [1,626字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Filesystems}} {{Stub}} '''NFS''' 是Sun Microsystems公司发明的。 它之所以普及,主要是因为它很容易实现。 作为其简单性的回报,它往往性能相对较差,几乎完全缺乏安全性。 这些都很大程度上是由于其无连接的性质。 当您从文件中请求数据时,服务器会向您发送请求的信息,但不会跟踪哪些客户端打开了哪些文件。 为了防止您从文件中看到(非常)过时的…”)
- 2022年3月28日 (一) 06:28 NTFS (历史 | 编辑) [4,873字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Filesystems}} NTFS ('''New Technology File System''') 是Windows NT的原生文件系统。 它不仅基于HPFS,还支持访问控制等安全功能。 因为Windows NT完全是Unicode,所以NTFS是Unicode文件系统,每个字符(例如名称)是16位而不是8位。 == 关于 == NTFS不仅为HPFS添加了安全功能。 在NTFS中,有更多的内置冗余。 例如: 在 HPFS 中,清除错误位置的扇区会使整个卷无法访问…”)
- 2022年3月28日 (一) 06:06 Ext2 (历史 | 编辑) [23,531字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Filesystems}} '''Second Extended Filesystem'''('''ext2fs''')是对原始“扩展文件系统(Extended Filesystem)”的重写,因此也基于“inodes”的概念从20世纪90年代初到21世纪初,Ext2作为Linux事实上的文件系统存在了近十年,目前它被日志文件系统Ext3和ReiserFS取代。 它具有对UNIX所有权/访问权限、符号和硬链接以及类UNIX操作系统中常见的其他属性的本机支持…”)
- 2022年3月28日 (一) 02:45 COFF (历史 | 编辑) [19,394字节] Zhang3(讨论 | 贡献) (创建页面,内容为“COFF代表通用对象文件格式(Common Object File Format)。 它是一种用于存储编译代码的文件格式,例如编译器或链接器输出的代码。 与大多数编译器文件格式一样,COFF在文件中定义了结构,用于存储有关程序各个部分的信息,例如.text和.data,以及关于程序声明或定义的符号。 COFF可用于存储单个函数或符号、程序片段、库或整个可执行文件。 Microsoft P…”)
- 2022年3月27日 (日) 23:25 CPUID (历史 | 编辑) [10,217字节] Zhang3(讨论 | 贡献) (创建页面,内容为“CPUID指令可用于检索有关cpu的各种信息,如供应商字符串和型号、内部缓存的大小以及(更有趣的是)支持的cpu功能列表。 ==如何使用CPUID== === 检查CPUID可用性 === 在使用CPUID指令之前,还应该通过测试eflags中的“ID”位(0x200000)来确保处理器支持该指令。 此位仅在支持CPUID指令时才可修改。 对于不支持CPUID的系统,更改 'ID' 位不会有任何影响。 '''注…”)
- 2022年3月25日 (五) 06:21 Open Programmable Interrupt Controller (历史 | 编辑) [2,097字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''开放式可编程中断控制器(OPIC-Open Programmable Interrupt Controller)'''是具有8-16个输入的中断控制器,与PIC非常相似,它为PCI设备提供了触发中断的方法。 在索引的互联网上可以找到关于OPIC的有限信息。 ==历史== OPIC,也称为OpenPIC,是一种SMP控制器,类似于现代APIC,最多支持32个处理器。 它还有8-16条中断输入线,允许PCI设备触发CPU中断。 它是由AMD/Cyrix…”)
- 2022年3月25日 (五) 06:08 Loopback Device (历史 | 编辑) [11,935字节] Zhang3(讨论 | 贡献) (创建页面,内容为“环回设备(Loopback Device)是一种用于将文件解释为真实设备的机制。 这种方法的主要优点是,在真实磁盘上使用的所有工具都可以与环回设备一起使用。 注意:本文仅介绍UNIX环境(包括Cygwin)。 有关如何在Windows上使用环回设备的信息,请参阅 diskpart。 ==Linux下的环回设备== Linux环回设备只能由root使用,在使用之前需要在内核…”)
- 2022年3月25日 (五) 02:55 Printing To Screen (历史 | 编辑) [7,052字节] Zhang3(讨论 | 贡献) (创建页面,内容为“==基础知识== 假设您处于 保护模式 并且不使用 BIOS 将文本写入屏幕,则您将直接写入 “视频” 存储器。 这很容易。 彩色显示器的文本屏幕视频存储器位于<tt>0xB8000</tt>,单色显示器的文本屏幕视频存储器位于地址<tt>0xB0000</tt> (有关更多信息,请参见 检测彩色和单色显示器)。 文本模式内存对屏幕…”)
- 2022年3月25日 (五) 02:34 Detecting Colour and Monochrome Monitors (历史 | 编辑) [701字节] Zhang3(讨论 | 贡献) (创建页面,内容为“检测用户是否拥有彩色或单色视频卡是一项微不足道的任务。 BIOS 数据段中包含此信息的值。 下面是一个来检索这个的函数 (在ISO C中) : == 函数== <source lang="c"> #include <stdint.h> enum video_type { VIDEO_TYPE_NONE = 0x00, VIDEO_TYPE_COLOUR = 0x20, VIDEO_TYPE_MONOCHROME = 0x30, }; uint16_t detect_bios_area_hardware(void) { const uint16_t* bda_de…”)
- 2022年3月25日 (五) 02:30 Binutils (历史 | 编辑) [620字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{In Progress}} {{Stub}} GNU二进制实用程序 (通常称为binutils) 是一组用于创建和处理二进制文件的工具。 交叉编译binutils的说明可以在GCC交叉编译器页面上找到。 == Binutils Applications == 请注意,此列表并不完整。 {| {{wikitable}} |- | as || GNU Assembler |- | ld || GNU Linker |- | ar || 归档器(Archiver),用于创建库 |- | objdump || 显示有…”)
- 2022年3月25日 (五) 02:27 Link Archiver (历史 | 编辑) [1,148字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} {{Infobox_Tool |name=GNU Archiver |website=http://www.gnu.org/software/binutils/ }} GNU '''ar'''是一个存档多个文件的实用程序,是binutils包的一部分。 它用于将一组文件合并为一个文件。 这样就可以压缩、发送文件,或者最重要、最常见的是将文件链接到程序中。 ==用法== 这个工具本身就像它的目的一样简单。用于存档一系列目标文件: <source lang="bash">ar -rcs a…”)
- 2022年3月25日 (五) 01:36 802.11 (历史 | 编辑) [1,484字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} '''IEEE 802.11'''标准是一套描述无线局域网通信的标准。 这802.11个频段目前为2.4GHz、3.6GHz和5GHz。 该标准主要由IEEE 802.11工作组开发。 ==协议和修订== === 802.11 (1997 original) === 802.11标准的第一个版本于1997年发布,现在称为802.11 Legacy标准,规定在2.4GHz范围内以每秒1或2兆比特(Mbps)的速度传输无线信息。 === 802.11a === 1999年发布的802.11a标准规定了在5GHZ…”)
- 2022年3月24日 (四) 12:07 NVMe (历史 | 编辑) [8,129字节] Zhang3(讨论 | 贡献) (创建页面,内容为“[https://nvmexpress.org/resources/specifications/ NVMe规范] 可以在这里找到。 关于这个页面的论坛帖子[https://forum.osdev.org/viewtopic.php?f=8&t=36366 在这里]。 ==概述== * NVMe控制器可以作为具有类代码1和子类代码8的PCI设备找到。 * 它的寄存器可以通过BAR 0进行访问(应该是64位内存IO)。 * 控制器处理从“submission queues(提交队列)”提交给它的命令(commands)。 驱动…”)
- 2022年3月24日 (四) 09:14 SSE (历史 | 编辑) [6,818字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Floats}} ''' 流式单指令多数据扩展 (SSE-Streaming SIMD Extensions) ''' == Streaming SIMD Extensions (SSE) == === 简介 === 奔腾III中引入了SSE,并为英特尔指令集额外提供了70条指令。 SSE指令可以帮助增加由于单指令,多数据 (SIMD) 指令的数据。 这些指令可以在多个数据上并行执行公共表达式。 SSE附带8个(64位模式下为16个)XMM寄存器(XMM0-7(15)),它们是128位寄存器。…”)
- 2022年3月24日 (四) 08:31 Porting GCC to your OS (历史 | 编辑) [1,601字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Rating|4}} {{In Progress}} * 阅读GCC交叉编译器。 * 制作一个特定于操作系统的工具链。 * 阅读自托管GCC交叉编译(Hosted GCC Cross-Compiler)。 * 有完备的 C Library。 GCC是相当可移植的,需要C标准库和POSIX的一些扩展。 例如,它需要fork和exec来运行汇编器和链接器。 你将需要一个C++标准库 (例如libst…”)
- 2022年3月24日 (四) 08:09 Cross-Compiler Successful Builds (历史 | 编辑) [28,472字节] Zhang3(讨论 | 贡献) (创建页面,内容为“此页面是OSDev.org成员成功构建GCC交叉编译器的摘要。 这些数字指的是正在构建(译者注:应该指的是交叉编译器)的版本,而不是执行构建的主机编译器。 == GCC Version 11.x.x == {| {{wikitable}} |- style="height: 6em;" ! ↓ GCC / Binutils → ! style="transform: rotate(-90deg);max-width: 2em;" | 2.37 ! style="transform: rotate(-90deg);max-width: 2em;" | 2.36.1 ! style="…”)
- 2022年3月24日 (四) 07:58 Raspberry Pi (历史 | 编辑) [12,978字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{In Progress}} {{FirstPerson}} {{Sole Editor}} 这是关于Raspberry Pi上裸机[OS]开发的教程。 本教程是专门为Raspberry PI Model B Rev2编写的,因为作者没有其他硬件可以测试。 但是到目前为止,从本教程的目的出发,这些型号基本上是相同的 (Rev 1有256MB ram,Model A没有以太网)。 这是作者的第一个ARM系统,我们在写作时学习,没有任何关于ARM的知识。 假定并要求具备Li…”)
- 2022年3月24日 (四) 05:29 IA32 Architecture Family (历史 | 编辑) [11,613字节] Zhang3(讨论 | 贡献) (创建页面,内容为“下表和注释概述了所生产的基于x86的处理器(其中大多数处理器至今仍以某种形式提供)。 这些表仅供参考,确定CPU功能(至少在较新的CPU中)的最可靠方法是使用CPUID。 该表相当容易阅读,但还是对某些值进行了帮助注释。 标有 '''Yes''' 的值在该系列的所有CPU中都可用,没有例外。 标有 '''No''' 的项目根本不可用。 在某些cpu (可能是更高规格的计…”)
- 2022年3月24日 (四) 02:38 Virtual Monitor (历史 | 编辑) [5,299字节] Zhang3(讨论 | 贡献) (创建页面,内容为“Virtual Monitor是在虚拟8086模式中设置和控制任务所需的一段代码。 == 要求 == * 必须启用保护模式 * 必须支持中断服务例程,更具体地说,必须支持GPF(一般保护异常)的工作异常处理程序。 == 相关工作 == 嗯,你主要有两种风格: 要么你可以创建一个独立的任务,它将在你的操作系统中在V86模式下…”)
- 2022年3月24日 (四) 01:48 Virtual 8086 Mode (历史 | 编辑) [4,914字节] Zhang3(讨论 | 贡献) (创建页面,内容为“虚拟8086模式是保护模式的子模式。 简而言之,虚拟8086模式是在保护模式下运行的CPU“模拟(Emulated)”得到的16位实模式机器。 == 进入V86 == 当在EFLAGS寄存器中设置VM位(位17)为1时,CPU在虚拟86模式下执行。 如果要进入虚拟86模式,则必须将此位设置为1。 修改EFLAG寄存器的一种方法是使用pushf和popf指令。 这些指令分别推送和弹出堆栈…”)
- 2022年3月23日 (三) 11:35 X86-64 (历史 | 编辑) [8,960字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{DISPLAYTITLE:x86-64}} 本文讨论'''x86-64'''CPU(AMD64和Intel的等效EM64T实现)。 IA-64 (Itanium) 是 '''真的'''比较独特,这里不讨论。 ==特性== ===长模式=== 长模式将通用寄存器扩展到64位 (RAX,RBX,RIP,RSP,RFLAGS等),并添加了八个额外的整数寄存器 (R8,R9,...,R15) 以及八个SSE寄存器 (XMM8至XMM15) 到CPU。 线性地址扩展到64位(然而,特定的CPU可能实现的小于64位…”)
- 2022年3月23日 (三) 11:31 CPU Registers x86-64 (历史 | 编辑) [11,616字节] Zhang3(讨论 | 贡献) (创建页面,内容为“Category:CPU_Registers {{Disputed|Talk:CPU_Registers_x86-64}} == 通用寄存器 == {| class="wikitable" border="1" |- ! colspan=5 | 名称(Monikers) ! rowspan=2 | 描述 |- ! 64-bit ! 32-bit ! 16-bit ! 低16位中的8高位 ! 8-bit |- | RAX | EAX | AX | AH | AL | 累加器(Accumulator) |- | RBX | EBX | BX | BH | BL | 基址(Base) |- | RCX | ECX | CX | CH | CL | 计数器(Counter) |- | RDX | EDX | DX | DH | DL | 数据(Data - 通常用于扩展A寄…”)
- 2022年3月23日 (三) 08:06 VGA Fonts (历史 | 编辑) [9,678字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{TutorialTone}} 你已知道如何在文本模式下显示字符,现在你想要在图形模式下执行此操作。(译者注:内核中文本模式的显示方式是使用BIOS软中断INT指令,调用BIOS功能) 这并不复杂,但绝对比在内存中的特定偏移量下编写ASCII代码更复杂。 你必须逐像素地绘制。 但是你怎么知道该画什么呢? 它存储在称为位图字体(bitmap fonts)的数据矩阵中。 ==…”)
- 2022年3月23日 (三) 07:04 VGA Resources (历史 | 编辑) [2,163字节] Zhang3(讨论 | 贡献) (创建页面,内容为“Category:VGA == VGA 资源 == * 本Wiki * [http://www.google.com/search?hl=en&ie=UTF-8&q=VGA+registers+programming&btnG=Google+Search 谷歌搜索“VGA寄存器编程”], * [http://files.osdev.org/mirrors/geezer/osd/graphics/index.htm OSD: Graphics] 来自Chris Giese,包含许多代码片段。 * [http://web.archive.org/web/20140218012818/http://atschool.eduweb.co.uk/camdean/pupils/amac/vga.htm Tutorial on VGA graphics] 包括字体…”)
- 2022年3月23日 (三) 06:18 Multiboot (历史 | 编辑) [6,135字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''Multiboot'''多重引导规范是一个开放标准,它为内核提供了一种由兼容Multiboot的引导加载程序引导的统一方式。 多引导规范的参考实现由GRUB提供。 == Multiboot 1 == 最初的Multiboot是由布莱恩·福特和埃里希·斯特凡·博林·1995年创建的。 从那时起,它就已经被自由软件基金会发展和更新。 与Multiboot 1兼容的内核使用幻数0x1BADB002,而与Multiboot兼容的引…”)
- 2022年3月23日 (三) 05:49 GRUB (历史 | 编辑) [18,568字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{TutorialTone}} '''GRUB''' 是GNU项目的bootloader。(译者注:以后计划不再翻译Bootloader,英文来看是一个很明确的名词,但是翻译成“引导加载程序”以后像一个动词开头,译者的脑子经常要额外反应一下。) 当前版本2系列具有比 GRUB 0.97 (通常称为 “GRUB Legacy”) 更完整的功能集。 == 历史 == GRUB版本2以 [http://www.nongnu.org/pupa/ PUPA] (PUPA也有蛹的…”)
- 2022年3月22日 (二) 09:05 Detecting Memory (x86) (历史 | 编辑) [44,579字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Bias}} 操作系统初始化自身所需的最重要信息之一是对于机器上可用RAM的映射。(译者注:本文讨论了操作系统如何检测计算机有多少实际物理内存,并找到它们的访问地址的实现,建议同时参考阅读x86内存映射。本文分成了独立的全部原理讲解和全部代码示例两部分,如果你只关心一种做法,可以跳过一部分,前后结合着读。) 从…”)
- 2022年3月22日 (二) 06:45 Memory Map (x86) (历史 | 编辑) [7,604字节] Zhang3(讨论 | 贡献) (创建页面,内容为“本文描述BIOS跳转到自制bootloader代码时计算机物理内存的内容。(译者注:Bootloader可以翻译为引导加载程序,但是这样翻译很容易把前面的“引导”当作单个动词理解,引起误解,所以本文不再翻译了) == 实模式地址空间 (< 1 MiB)== 当一台典型的x86 PC启动时,它将处于实模式,带有一个活动的BIOS。 在CPU保持在实模式期间,IRQ0(时钟)将重…”)
- 2022年3月21日 (一) 07:41 ELF (历史 | 编辑) [15,998字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{File formats}} ELF (可执行和可链接格式-Executable and Linkable Format) 是由Unix系统实验室在SVR4上与Sun Microsystems一起工作时设计的 (UNIX System V Release 4.0)。 因此,ELF最早出现在基于SVR4的Solaris 2.0(又名SunOS 5.0)中。 格式在System V ABI中规范化。 它是一种非常通用的文件格式,后来被许多其他操作系统用作可执行文件和共享库文件。 它确实区分了TEXT、DATA和B…”)
- 2022年3月21日 (一) 05:29 HPET (历史 | 编辑) [13,061字节] Zhang3(讨论 | 贡献) (创建页面,内容为“:''本页不是对HPET的完整描述,只是一个轻量级的介绍。 如果你需要本文未涵盖的任何信息,请参考[http://www.intel.com/content/dam/www/public/us/en/documents/technical-specifications/software-developers-hpet-spec-1-0a.pdf HPET规范]。'' '''HPET'''或高精度事件定时器(High Precision Event Timer),是英特尔和微软设计的一款硬件,用于取代较旧的 PIT 和 RTC。 它由(通常为64位)主…”)
- 2022年3月20日 (日) 15:10 APIC (历史 | 编辑) [18,426字节] Zhang3(讨论 | 贡献) (创建页面,内容为“APIC(“高级可编程中断控制器-Advanced Programmable Interrupt Controller”)是针对旧版PIC的最新英特尔标准。 它用于多处理器系统,是所有最新的英特尔(和兼容的)处理器的组成部分。 APIC用于复杂的中断重定向,以及在处理器之间发送中断。 使用旧的PIC规范无法实现这些功能。 ==检测== CPUID.01h:EDX [位9] 标志指定CPU是否具有内置的本地APIC。 通过解析[…”)
- 2022年3月20日 (日) 11:03 RTL8169 (历史 | 编辑) [12,075字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''RTL8169(S)-32/64网络接口芯片组编程指南''' RTL8169是Realtek的下一代高性能网卡。 这种特殊的芯片组被设计为以10/100/1000 Mbps的速度运行。 ==识别== RTL8169系列的基本接口在几个Realtek网卡中是通用的。 这适用于以下来自FreeBSD的re驱动程序的PCI供应商和设备id的非全面列表: * 10ec:8161 * 10ec:8168 * 10ec:8169 * 1259:c107 * 1737:1032 * 16ec:0116 ==基本启动== ===获取MAC…”)
- 2022年3月20日 (日) 10:36 Building GCC (历史 | 编辑) [9,684字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Rating|1}} 在本教程中,我们将你的系统 GCC 升级到最新版本。(译者注:本文主要说明了从源代码构建GCC的过程,这个过程中通过现有GCC构建GCC,是一个Bootstrap自举过程。注意这里不是要构建交叉编译器,就是构建一个普通主机Host编译器) 这将帮助你构建GCC交叉编译器,在构建交叉编译器时更建议你使用相同版本的编译器。 其…”)
- 2022年3月19日 (六) 23:55 Model Specific Registers (历史 | 编辑) [2,245字节] Zhang3(讨论 | 贡献) (创建页面,内容为“P6系列以后的处理器(包括PentiumPro、Pentium II、III、4和Intel Core)有一组寄存器,允许配置与操作系统相关的内容,如内存类型范围、syscenter/sysexit、本地APIC等。 可以使用RDMSR(读MSR)、WRMSR(写MSR)和RDTSC等特殊指令访问这些'''MSRs'''。 == 访问特定模型寄存器(Model Specific Registers) == RDMSR和WRMSR指令组访问的每个MSR都由一个32位整数标识。 MSR是64位宽的。 你…”)
- 2022年3月19日 (六) 12:52 Interrupt Service Routines (历史 | 编辑) [8,418字节] Zhang3(讨论 | 贡献) (创建页面,内容为“x86体系结构是一个中断驱动的系统。 外部事件触发中断 - 中断正常控制流,并调用'''中断服务例程'''(ISR-Interrupt Service Routine)。 这样的事件可以由硬件或软件触发。 硬件中断的一个例子是键盘: 每按一次键,键盘就会触发IRQ1(中断请求1),并调用相应的中断处理程序。 定时器和磁盘请求完成是硬件中断的其他可能来源。 软件…”)
- 2022年3月19日 (六) 12:14 Non Maskable Interrupt (历史 | 编辑) [4,379字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''不可屏蔽中断''' ('''NMI-Non-Maskable Interrupt''')是硬件驱动的中断,与PIC中断非常相似,但NMI要么直接进入CPU,要么通过另一个控制器(例如ISP)---在这种情况下,它可以被屏蔽。 == 关于 == NMI用于RAM错误和不可恢复的硬件问题。 对于较新的计算机,可以使用机器检查异常和(或)SMI来处理这些事情。 对于最新的芯片组 (至少对于英特尔而言),还有一堆TCO…”)
- 2022年3月19日 (六) 11:49 RSDP (历史 | 编辑) [3,609字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''RSDP''' (根系统描述指针-Root System Description Pointer) 是 ACPI 编程接口中使用的数据结构。 在ACPI版本1.0中,它具有以下结构: <source lang="c"> struct RSDPDescriptor { char Signature[8]; uint8_t Checksum; char OEMID[6]; uint8_t Revision; uint32_t RsdtAddress; } __attribute__ ((packed)); </source> 从2.0版开始,对其进行了扩展,并添加了以下新字段: <source lang="c"> struct RSDPDescriptor20 {…”)
- 2022年3月19日 (六) 10:01 AML (历史 | 编辑) [10,127字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{stub}} ACPI机器语言(AML)是ACPI使用的与平台无关的代码。 甚至需要关闭计算机的知识。 它可以在DSDT和SSDT表中找到,这两个表依次通过解析RSDT或XSDT来找到。 AML代码是在读取每个表时从该表的开头开始解析的字节代码。 它包含ACPI命名空间内的设备和对象的定义。 通过解析代码,注意所有适当的控制流语句,AML解释器可以建立系统内所有…”)
- 2022年3月19日 (六) 09:43 PCI Express (历史 | 编辑) [7,780字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{In Progress}} PCI Express总线是一种向后兼容的高性能通用I/O互连总线,专为一系列计算平台设计。 与PCI本地总线相比,PCI Express的主要改进之一是它现在使用串行接口(与PCI使用的并行接口相比)。 这种改进可以与ATA接口的类似序列化进行比较。 ==PCI Express链接== PCI Express总线通过一对高速单向差分链路(分别为发送和接收)将每个设备直接连接到CPU和…”)
- 2022年3月18日 (五) 10:04 Task State Segment (历史 | 编辑) [8,969字节] Zhang3(讨论 | 贡献) (创建页面,内容为“'''任务状态段''' ('''TSS-Task State Segment''') 是特定于IA-32和X86-64体系结构的二进制数据结构。 它保存有关任务的信息。 在 '''保护模式''' 中,'''TTS'''; 主要适用于 '''硬件任务切换''',其中每个单独的 '''任务''' 都有自己的 '''TSS'''。 在软件多任务…”)
- 2022年3月18日 (五) 09:29 Physical Address Extension (历史 | 编辑) [1,823字节] Zhang3(讨论 | 贡献) (创建页面,内容为“本文讨论了许多x86处理器上可用的物理地址扩展(PAE-Physical Address Extension)。 本文假设您对虚拟内存有很好的理解(如分页中所讨论的)。 本文还讨论了特定于x86的功能,尽管其他体系结构很容易具有非常相似的机制。 ==历史== PAE位是在Intel Pentium Pro处理器中引入的。 它专门旨在允许32位操作系统使用超过4 GB的内存。 ==工作原理== 当PAE位关闭…”)
- 2022年3月18日 (五) 09:11 Higher Half Kernel (历史 | 编辑) [2,927字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} {{Template:Kernel designs}} 向每个用户进程中映射内核是传统做法的,通常也是比较好的做法。 例如,Linux和许多其它类Unix系统内核驻留在每个地址空间的虚拟地址 “0XC0000000-0XFFFFFFFF”,用户代码、数据、堆栈、库等的范围为 “0x00000000-0xbffffff”。 有这种设计的内核因为相对与应用程序,内核使用了“higher half(高一半)”的虚拟地址空间。(译…”)
- 2022年3月18日 (五) 07:17 Heap (历史 | 编辑) [1,956字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} Category:Memory management = 堆(Heap) = 堆是应用程序和内核的重要组成部分。 它通常还被更高级别的内存管理所取代,后者处理更大的内存块。 对于大多数操作系统,内存将基于页面或其他大块分配。 X86和X64体系结构上的页面通常为4KB,但也可以更大。 但是,对于较小的分配,整个页面都会被浪费。 例如,如果您只需要24个字节,并且分配了…”)
- 2022年3月18日 (五) 07:03 Exceptions (历史 | 编辑) [16,053字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{| align="right" | __TOC__ |} 如本文所述'''异常(Exceptions)''',是CPU在发生 “错误” 时生成的一种中断。 在大多数情况下,有些异常并不是真正的错误,例如页面错误。 例外情况分类为: * '''错误(故障)-Faults''': 这些可以更正,程序可能会像什么都没发生一样继续进行。 * '''陷阱-Traps''': 陷阱在执行陷阱指令后立即报告。 * ''…”)
- 2022年3月18日 (五) 03:14 Uniform Driver Interface (历史 | 编辑) [15,319字节] Zhang3(讨论 | 贡献) (创建页面,内容为“Category:Uniform Driver Interface Category:Drivers Category:Driver Interfaces thumb|alt=Logo|The official Project UDI logo '''UDI复兴计划在Freenode(irc.freenode.net)上维护一个名为#udi的IRC频道'''。 欢迎加入并提出问题。 UDI代表“统一驱动程序接口(Uniform Driver Interface)”。 它是框架和驱动程序API/ABI的规范,使不同的操作系统(实现UDI框架)能够…”)
- 2022年3月17日 (四) 15:22 Hardware Abstraction Layer (历史 | 编辑) [1,200字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{Stub}} == 硬件抽象层 == “硬件抽象层”或HAL(Hardware Abstraction Layer)是对实际硬件的抽象, 以便即使底层硬件改变或同一设备类别的不同型号在它们的实现和实际接口上有很大变化,也向软件呈现一致的接口。 HAL允许程序员以一致且基本上与型号/品牌无关的方式编写设备驱动程序,它甚至可能将内核与许多已安装的硬件隔离开来。 使用HAL的操作…”)
- 2022年3月17日 (四) 15:02 Compositing (历史 | 编辑) [4,149字节] Zhang3(讨论 | 贡献) (创建页面,内容为“{{In Progress}} '''Compositing'''是一种提供窗口化GUI的方法,其中每个应用程序窗口都有自己的专用缓冲区 - 有时称为''surface''或''canvas'' - 它可以随心所欲地画画。(译者注:好像在应用层开发中不怎么这样用这些术语,所以保留原文了。或者翻译为“图形复合功能”) 然后,“合成器(compositor)”将这些缓冲区组合在一起,以生成最终图像并显示在屏幕…”)