所有公开日志
跳到导航
跳到搜索
所有osdev公开日志的联合展示。您可以通过选择日志类型、输入用户名(区分大小写)或相关页面(区分大小写)筛选日志条目。
(最新 | 最旧) 查看(前50个 | 后50个)(20 | 50 | 100 | 250 | 500)- 2022年3月18日 (五) 09:29 Zhang3 讨论 贡献创建了页面Physical Address Extension (创建页面,内容为“本文讨论了许多x86处理器上可用的物理地址扩展(PAE-Physical Address Extension)。 本文假设您对虚拟内存有很好的理解(如分页中所讨论的)。 本文还讨论了特定于x86的功能,尽管其他体系结构很容易具有非常相似的机制。 ==历史== PAE位是在Intel Pentium Pro处理器中引入的。 它专门旨在允许32位操作系统使用超过4 GB的内存。 ==工作原理== 当PAE位关闭…”)
- 2022年3月18日 (五) 09:27 Zhang3 讨论 贡献创建了页面PAE (重定向页面至Physical Address Extension) 标签:新建重定向
- 2022年3月18日 (五) 09:11 Zhang3 讨论 贡献创建了页面Higher Half Kernel (创建页面,内容为“{{Stub}} {{Template:Kernel designs}} 向每个用户进程中映射内核是传统做法的,通常也是比较好的做法。 例如,Linux和许多其它类Unix系统内核驻留在每个地址空间的虚拟地址 “0XC0000000-0XFFFFFFFF”,用户代码、数据、堆栈、库等的范围为 “0x00000000-0xbffffff”。 有这种设计的内核因为相对与应用程序,内核使用了“higher half(高一半)”的虚拟地址空间。(译…”)
- 2022年3月18日 (五) 07:17 Zhang3 讨论 贡献创建了页面Heap (创建页面,内容为“{{Stub}} Category:Memory management = 堆(Heap) = 堆是应用程序和内核的重要组成部分。 它通常还被更高级别的内存管理所取代,后者处理更大的内存块。 对于大多数操作系统,内存将基于页面或其他大块分配。 X86和X64体系结构上的页面通常为4KB,但也可以更大。 但是,对于较小的分配,整个页面都会被浪费。 例如,如果您只需要24个字节,并且分配了…”)
- 2022年3月18日 (五) 07:06 Zhang3 讨论 贡献创建了页面Interrupt (重定向页面至Interrupts) 标签:新建重定向
- 2022年3月18日 (五) 07:03 Zhang3 讨论 贡献创建了页面Exceptions (创建页面,内容为“{| align="right" | __TOC__ |} 如本文所述'''异常(Exceptions)''',是CPU在发生 “错误” 时生成的一种中断。 在大多数情况下,有些异常并不是真正的错误,例如页面错误。 例外情况分类为: * '''错误(故障)-Faults''': 这些可以更正,程序可能会像什么都没发生一样继续进行。 * '''陷阱-Traps''': 陷阱在执行陷阱指令后立即报告。 * ''…”)
- 2022年3月18日 (五) 03:18 Zhang3 讨论 贡献创建了页面Exception (重定向页面至Exceptions) 标签:新建重定向
- 2022年3月18日 (五) 03:17 Zhang3 讨论 贡献创建了页面文件:Core spec-8.gif
- 2022年3月18日 (五) 03:17 Zhang3 讨论 贡献上传文件:Core spec-8.gif
- 2022年3月18日 (五) 03:16 Zhang3 讨论 贡献创建了页面文件:Udi color 330x220.jpg
- 2022年3月18日 (五) 03:16 Zhang3 讨论 贡献上传文件:Udi color 330x220.jpg
- 2022年3月18日 (五) 03:14 Zhang3 讨论 贡献创建了页面Uniform Driver Interface (创建页面,内容为“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 Zhang3 讨论 贡献创建了页面Hardware Abstraction Layer (创建页面,内容为“{{Stub}} == 硬件抽象层 == “硬件抽象层”或HAL(Hardware Abstraction Layer)是对实际硬件的抽象, 以便即使底层硬件改变或同一设备类别的不同型号在它们的实现和实际接口上有很大变化,也向软件呈现一致的接口。 HAL允许程序员以一致且基本上与型号/品牌无关的方式编写设备驱动程序,它甚至可能将内核与许多已安装的硬件隔离开来。 使用HAL的操作…”)
- 2022年3月17日 (四) 15:10 Zhang3 讨论 贡献创建了页面X86 (重定向页面至分类:X86) 标签:新建重定向
- 2022年3月17日 (四) 15:09 Zhang3 讨论 贡献创建了页面Scheduler (重定向页面至Processes and Threads) 标签:新建重定向
- 2022年3月17日 (四) 15:08 Zhang3 讨论 贡献创建了页面PIT (重定向页面至Programmable Interval Timer) 标签:新建重定向
- 2022年3月17日 (四) 15:02 Zhang3 讨论 贡献创建了页面Compositing (创建页面,内容为“{{In Progress}} '''Compositing'''是一种提供窗口化GUI的方法,其中每个应用程序窗口都有自己的专用缓冲区 - 有时称为''surface''或''canvas'' - 它可以随心所欲地画画。(译者注:好像在应用层开发中不怎么这样用这些术语,所以保留原文了。或者翻译为“图形复合功能”) 然后,“合成器(compositor)”将这些缓冲区组合在一起,以生成最终图像并显示在屏幕…”)
- 2022年3月17日 (四) 08:00 Zhang3 讨论 贡献创建了页面Shell (重定向页面至Introduction#What is a shell?) 标签:新建重定向
- 2022年3月17日 (四) 07:58 Zhang3 讨论 贡献创建了页面Networking (重定向页面至Network Stack) 标签:新建重定向
- 2022年3月17日 (四) 07:57 Zhang3 讨论 贡献创建了页面User Interface (创建页面,内容为“{{Stub}} <b>用户界面-User Interface</b> 或 <b>UI</b> 是人机(human-machine)界面的子类别,在操作系统项目中起着重要作用。 术语“UI”描述操作系统或应用程序与用户的交互。 另一方面,用户与OS或更确切地说是应用程序的交互是人机界面的另一个子类别。 如今,此界面是视觉的,也有一些OS的触觉支持,例如振动或听觉的用于通知和反馈。 该界面将形成用户…”)
- 2022年3月17日 (四) 07:51 Zhang3 讨论 贡献创建了页面Time (重定向页面至Time And Date) 标签:新建重定向
- 2022年3月17日 (四) 07:50 Zhang3 讨论 贡献创建了页面Keyboard (重定向页面至PS/2 Keyboard) 标签:新建重定向
- 2022年3月17日 (四) 07:42 Zhang3 讨论 贡献创建了页面Formatted Printing (创建页面,内容为“本文将介绍格式化打印的概念(即 ''printf()'')。 ==''printf()''是如何工作的?== 你迈向获得可靠的 ''printf()'' 功能的第一步是对其工作的理解。 你有没有试过模仿“va_list”(参数列表)并且带''void**'',比如说一种特定的语言,(译者注:这里原作者似乎使用特殊排版格式,打乱了原句单词的位置,无法正确翻译)比如... 总原则和目标 - 本地化 -…”)
- 2022年3月17日 (四) 07:11 Zhang3 讨论 贡献创建了页面Calling Global Constructors (创建页面,内容为“本教程讨论如何正确调用全局构造函数,例如全局C++对象上的构造函数。 这些应该在你的main函数之前运行,这就是为什么程序入口点通常是一个名为 _start的函数。 此函数负责解析命令行参数,初始化标准库(内存分配、信号等),运行全局构造函数并最终exit(main(argc, argv))。 如果你更改编译器,自制操作系统上的情况可能会有所不同,但是如果你使…”)
- 2022年3月17日 (四) 03:00 Zhang3 讨论 贡献创建了页面GCC Cross Compiler (重定向页面至GCC Cross-Compiler) 标签:新建重定向
- 2022年3月16日 (三) 12:19 Zhang3 讨论 贡献创建了页面Shutdown (创建页面,内容为“为了关闭计算机,你需要使用某种电源管理。 要么是APM要么是ACPI。 == APM == 这是关闭计算机必须给出的APM命令的基本序列。 有关如何实施这些步骤的详细信息,请参阅 APM 文章。 * 执行安装检查。 *检查APM版本是否至少为‘1.1 * 断开任何现有的APM接口。 * 连接实模式接口。 * 告诉APM你的驱动支持1.1版 * 为所有设备启用电源管理。 * 将所有设…”)
- 2022年3月16日 (三) 08:25 Zhang3 讨论 贡献创建了页面ACPI (创建页面,内容为“ACPI(Advanced Configuration and Power Interface,高级配置和电源接口)是由Intel、Microsoft和Toshiba联合开发的PC电源管理和配置标准。 ACPI允许操作系统控制每个设备的电量 (例如,允许其使某些设备处于待机状态或断电状态)。 它还用于控制和/或检查热区(温度传感器、风扇速度等)、电池电量、PCI IRQ路由、CPU、NUMA域和许多其他内容。 ==…”)
- 2022年3月16日 (三) 06:32 Zhang3 讨论 贡献创建了页面IDT (重定向页面至Interrupt Descriptor Table) 标签:新建重定向
- 2022年3月16日 (三) 06:32 Zhang3 讨论 贡献创建了页面I Can't Get Interrupts Working (创建页面,内容为“此页面是一种故障排除手册,可帮助您解决论坛来宾和成员在论坛上遇到的常见中断框架问题 请确保你收集了关于自己情况的足够信息(例如在Bochs中运行代码)。 == ISR问题 == === 我的处理程序没有被调用?!(汇编) === 对于这个测试,你需要通过软件自己调用中断。 在确定IDT设置正确之前,不要尝试从一开始就处理IRQ。 你需要有: *…”)
- 2022年3月16日 (三) 06:27 Zhang3 讨论 贡献创建了页面IDT problems (重定向页面至I Can't Get Interrupts Working#Problems with IDTs) 标签:新建重定向
- 2022年3月16日 (三) 02:13 Zhang3 讨论 贡献创建了页面Interrupt Descriptor Table (创建页面,内容为“'''中断描述符表'''('''IDT-Interrupt Descriptor Table''')是特定于IA-32和x86-64体系结构的二进制数据结构。 它是实模式里中断向量表(IVT)的保护模式和长模式对应物,用以告诉CPU中断服务例程 (ISR-Interrupt Service Routines) 所在的位置 (一个中断向量代表一个例程)。 它在结构上类似于G…”)
- 2022年3月16日 (三) 01:59 Zhang3 讨论 贡献创建了页面GDT (重定向页面至Global Descriptor Table) 标签:新建重定向
- 2022年3月15日 (二) 12:18 Zhang3 讨论 贡献创建了页面CMOS (创建页面,内容为““CMOS”是一种极低功耗的静态存储器,与实时时钟(RTC)位于同一芯片上。 它于1984年引入IBM PC AT,使用摩托罗拉MC146818A实时时钟。 CMOS (和实时时钟) 只能通过IO端口0x70和0x71访问。 CMOS存储器的功能是在计算机关闭时为BIOS存储50(或114)字节的“设置”信息 -- 因为有一个单独的电池,可以使时钟和CMOS信息长期保持激活状态。 CMOS值一次访问一个字节…”)
- 2022年3月15日 (二) 09:08 Zhang3 讨论 贡献创建了页面RTC (创建页面,内容为“==导言== 典型的操作系统会使用APIC或PIT进行计时。 但是,RTC的工作原理也一样。 RTC代表实时时钟-Real Time Clock。 它是使你的计算机时钟保持更新的芯片。 芯片内也有64字节的 CMOS RAM。 如果你只是想从RTC中读取日期/时间的信息,请参阅 CMOS 文章。 本文其余部分介绍了RTC中断的使用。 ==能力== RTC能够支持多个…”)
- 2022年3月15日 (二) 05:55 Zhang3 讨论 贡献创建了页面Programmable Interval Timer (创建页面,内容为“'''可编程间隔定时器'''('''PIT-Programmable Interval Timer''')芯片(Intel 8253/8254)基本上由一个振荡器(oscillator)、一个预分频器(prescaler)和3个独立的分频器(frequency dividers)组成。 (译者注:Timer一词可以翻译为计时器或定时器,译者以后打算尽量翻译为”定时器“。Timer的核心功能是周期性的发出Tick信号。) 每个分频器都有一个…”)
- 2022年3月14日 (一) 07:18 Zhang3 讨论 贡献创建了页面PC Speaker (创建页面,内容为“PC扬声器是PC兼容系统上可用的最原始的声音设备。 它的特点是可以发出独特的“哔哔声”和“吱吱声”,因此有时被称为“PC Beeper”或“PC Squeaker” - 蜂鸣器。 == 原始硬件 == 扬声器本身有两种可能的位置,“in”和“out”。 此位置可通过键盘控制器上端口0x61的位1来设置。 如果设置此位 (=1),则扬声器将移至 “out” 位置,如果清…”)
- 2022年3月14日 (一) 05:06 Zhang3 讨论 贡献创建了页面模板:Quotation (创建页面,内容为“{| class="toccolours" align="center" WIDTH="75%" style="padding: 20px 30px 10px 10px;" |- | <div class="scroll">{{{1}}}</div> <p style="text-align: right;"> {{if | {{{2|}}} | —{{{2}}}}} </p> |}”)
- 2022年3月14日 (一) 05:05 Zhang3 讨论 贡献创建了页面Deadlock (创建页面,内容为“==定义== {{Quotation| 如果一组进程中的每个进程都在等待该组进程中只有其它进程会引起的事件,则该组进程将死锁。 |Andrew Tanenbaum}} 更简单地说,当两个或多个进程相互阻塞时,就会出现死锁,因为没有人愿意“让步”让其他进程继续进行 - 导致所有进程都将无限期地保持僵局。 一个典型的例子是在资源管理中,例如当两个进程试图获得对一对文件…”)
- 2022年3月14日 (一) 03:01 Zhang3 讨论 贡献创建了页面分类:Synchronization (创建页面,内容为“Category:Processes and Threads”)
- 2022年3月14日 (一) 03:01 Zhang3 讨论 贡献创建了页面Semaphore (创建页面,内容为“'''信号量(semaphore)''' 是一种同步原始数据类型。 从程序员的角度来看,它是一种不透明的数据类型,有两个定义的操作,通常称为'''wait'''和'''signal'''。(译者注:可以理解为和PV操作对应,wait是P操作-尝试申请资源,signal是V操作-释放资源) 有两种类型的信号量--“二进制信号量”和“计数信号量”。 == 计数信号量 == 最常…”)
- 2022年3月14日 (一) 02:27 Zhang3 讨论 贡献创建了页面Spinlock (创建页面,内容为“==概述== 与所有形式的可重入锁(reentrancy locks)一样,自旋锁(spinlocks)用于确保对资源(例如,数据结构、硬件等)的有序访问,以便在一个上下文中运行的软件不会获得该资源的不一致视图,因为在另一个上下文中运行的软件正在修改资源。 例如,想象一个包含一个人的名字和姓氏的结构,该结构当前包含数据 “Fred” 和 “Smith”。 如果一个CPU将…”)
- 2022年3月13日 (日) 08:45 Zhang3 讨论 贡献创建了页面GCC Canadian Cross (创建页面,内容为“{{Stub}} Canadian Cross指首先在系统X(构建系统)上为系统Y(主机)构建一个交叉编译器。 然后,将对该交叉编译器,设置三个参数 <code>--build=<该编译器运行的位置>-host=<正在构建的编译器将运行的位置>-target=<正在构建的编译器将运行的可执行文件></code>。 单凭这一解释就足以说明为什么这一点既重要又容易出错。 ==="Minor" Canadian Cross=== 构建交叉编译器需要…”)
- 2022年3月12日 (六) 13:10 Zhang3 讨论 贡献创建了页面Strings do not work (重定向页面至Bran's Kernel Development Tutorial Known Bugs#As soon as I add strings, things go wrong.) 标签:新建重定向
- 2022年3月12日 (六) 13:08 Zhang3 讨论 贡献创建了页面How do I set a VGA mode without the BIOS (重定向页面至VGA Resources) 标签:新建重定向
- 2022年3月12日 (六) 13:06 Zhang3 讨论 贡献创建了页面How do I set a graphics mode (创建页面,内容为“当PC第一次启动时,它被设置为标准的已知VGA文本模式。 但是在某些时候,你将希望开始在屏幕上绘制像素而不是文本。 这要求你从文本模式切换到“图形”模式。 在16位模式下,通过调用中断0x10的不同函数,你可以轻松地使用BIOS在不同图形模式之间切换。 但是,一旦进入保护模式,事情就会变得更加困难。 ==使用UEFI== 对于EFI,标准是通用图形适…”)
- 2022年3月12日 (六) 12:49 Zhang3 讨论 贡献创建了页面How Do I Determine The Amount Of RAM (重定向页面至Detecting Memory (x86)) 标签:新建重定向
- 2022年3月12日 (六) 12:48 Zhang3 讨论 贡献创建了页面Hard Build System (创建页面,内容为“:''Everything should be made as simple as possible, but not simpler.'' (译者注:这句话是爱因斯坦的名言,其实本身的含义也仁者见仁智者见智。可以理解为:凡事尽可能简洁,但不能太过简单;也可以理解为:任何事情都应该做到最简单,而不是相对简单。总的来说应该是提醒读者要简化问题,但是不能太过个人理想化。) 自制操作系统的构…”)
- 2022年3月12日 (六) 11:09 Zhang3 讨论 贡献创建了页面Grub Error 13 (创建页面,内容为“== GRUB Error 13: Invalid or unsupported executable format: == GRUB 是GNU Multiboot规范的参考实现,通常被大多数32位OS开发人员使用。 它的优点是作为一个(显然)预先编写的引导程序,有更多的代码来处理各种BIOS的怪癖,而不是任何个人都值得自己去做。 有关更多信息,请参阅以下帖子: http://forum.osdev.org/viewtopic.php?f=1&t=21158&start=0. 但是,许多人在使GRUB识别…”)
- 2022年3月12日 (六) 06:23 Zhang3 讨论 贡献创建了页面Keyboard Controller (重定向页面至PS/2 Keyboard#Commands) 标签:新建重定向
- 2022年3月12日 (六) 06:19 Zhang3 讨论 贡献创建了页面Port IO (创建页面,内容为“x86体系结构将地址空间分为两个编程上不同的两组: 内存(memory)和端口(ports)。 在早古时代上,内存被用作数据存储,读写操作不会产生副作用,而端口被用来控制外部硬件,这些硬件需要不同的计时方式来工作。 这也是访问端口比访问内存慢得多的原因。 而许多其他常见的计算机体系结构具有统一的空间,其中设备以与内存相同的速度运行,…”)