帮酷LOGO
0 0 评论
  • 显示原文与译文双语对照的内容
文章标签:scratch  
How to create an OS from scratch

  • 源代码名称:os-tutorial
  • 源代码网址:http://www.github.com/cfenollosa/os-tutorial
  • os-tutorial源代码文档
  • os-tutorial源代码下载
  • Git URL:
    git://www.github.com/cfenollosa/os-tutorial.git
  • Git Clone代码到本地:
    git clone http://www.github.com/cfenollosa/os-tutorial
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/cfenollosa/os-tutorial
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
  • 操作系统教程

    如何从头开始创建操作系统 !

    我一直想学习如何从头开始做一个操作系统。 在大学里,我学习了如何实现高级功能( 分页。信号量。内存管理等),但是:

    • 我从未从自己的引导扇区开始
    • 大学很难,所以我不记得了。
    • 我接受了认为读取已经有内核的人,即使小,也是学习操作系统的好主意。

    灵感来自OSDev wiki插件,我将尝试为任何人提供简短的step-by-step READMEs和代码示例。 实际上,本教程基本上是第一个文档,但分割成小块,没有理论。

    更新:更多来源:关于操作系统开发的小书,jamesm开发教程的核。

    特性

    • 本课程是针对那些适应低层计算的人而设计的代码教程。 例如,程序员对操作系统的工作方式有些好奇,但没有时间或者有力的开始读取Linux内核。
    • - 没有什么理论- 是的这是一个。 Google是你的理论讲师。 一旦你通过了大学,过度的理论比没有理论更糟糕,因为它使事情看起来更难。
    • 课程很小,可能需要 5 -15分钟才能完成。 相信我相信你自己。 你可以做的 !

    如何使用本教程

    从第一个文件夹开始,按顺序向下。 因为你跳到文件夹 05,不知道为什么有 mov ah, 0x0e,所以因为你错过了讲座 02,所以你可以在上面的代码中找到。 是的,按顺序走。 你可以跳过你已经知道的东西。

    打开自述文件并读取第一行,详细介绍在读取代码之前应该熟悉的概念。 你不熟悉的Google概念。 第二行说明每个课程的目标。 因为他们解释了我们做了什么。 "为何"和"如何"一样重要。

    阅读自述文件的其余部分。 这是

    ( 可选) 在读取自述文件后,尝试自己编写代码文件。

    查看代码示例。 它们被注释得非常好。

    ( 可选) 试验它们并尝试打破它们。 确保你理解某事物的唯一方法是尝试打破它或者用不同的命令复制它。

    首先阅读每个文件夹的自述文件,然后是代码文件。 如果你勇敢,试着自己编码。

    策略

    我们希望用我们的操作系统做很多事情:

    • 从头开始引导,不使用 GRUB !
    • 输入 32位 模式- 完成
    • 从程序集跳转到C - 完成 !
    • 中断处理- 完成 !
    • 屏幕输出和键盘输入- 完成 !
    • 为了满足我们的需要,一个小的,基本的libc
    • 内存管理
    • 编写 文件系统 来存储文件
    • 创建一个非常简单的shell
    • 用户模式
    • 也许我们会写一个简单的文本编辑器
    • 多个进程和调度

    可以能我们会按照这个顺序进行的,但是很快就会告诉你。

    如果我们觉得足够勇敢:

    • 基本解释器,如 70 s !
    • 一个 GUI
    • 联网

    我仍在学习这一点。目前,请限制你的贡献,以修复可以能的Bug 或者改进现有的文档。 我还没有准备好接受增强功能。



    文章标签:scratch  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语