对于开发一个操作系统是一个漫长的过程,并不像一个Hello world程序那么快捷,那么明了。因此对开发OS的基本知识,基本技能也需要比较高深一些,特别对一些名词和概念,更需要深入地了解。由于操作系统大部份需要与硬件打交道,所以硬件的知识需要了解,特别CPU的工作方式需要更加明确一些。

目前reactos是基于C来开发的,那么对于C的语法是要了解的,并且熟练地使用C来开发软件。由于在一堆没有什么功能硬件上开发,所以要求对一些基本数据结果也是严格的。比如链表,队列,栈操作等等。在一些地方,使用C是没有办法操作进,就需要使用汇编来开发了。在reactos里有两种汇编,一种是NASM的,一种是GAS的。这两种汇编并且差别比较大,都需要对这些语法深入地了解,才能看得懂这些代码,才能进一下开发。因此,要开发reactos操作系统,需要NASM汇编、GAS汇编、C语言的学习。

如果准备好上面的知识之后,就可以到下面的网站下载源码了:

svn://svn.reactos.org/reactos/trunk/reactos

这是通过SVN工具来下载源码的,这份源码也不小,编译后生成的临时文件更多一些,需要把它放到一个比较大空闲的磁盘上。

源码下载后,就可以下载ReactOS编译工具RosBE,这个需要到网站www.reactos.org上下载。

总之,要开发reactos操作系统,需要学习X86的CPU工作方式,要学习汇编和C语法,这些是基本功。

reactos操作系统实现(2)相关推荐

  1. reactos操作系统实现 2

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 对于开发 ...

  2. reactos操作系统实现 1

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! reac ...

  3. reactos操作系统实现(47)

    当光盘变成记录数据以后,就开始使用光盘来分发操作系统了.毕竟光盘有着储存数据量大,成本便宜的优势.下面就来分析Reactos是怎么样通过光盘的格式来引导操作系统的. 现今的计算机BIOS,会在开机时根 ...

  4. reactos操作系统实现 3

    有人说,reactos不是实时操作系统,不能做嵌入式系统,难道真的不能做嵌入式系统吗?其实不是这样的,嵌入式系统本来就包括有两类系统,一种是要求实时性强,一种是要求实时性弱的.这两种都是嵌入式系统.因 ...

  5. reactos操作系统实现(1)

    reactos是什么操作系统呢?它是一个开源的操作系统,并且是兼容Windows XP的应用程序和驱动程序的操作系统.意思就是说,直接安装一个reactos之后,把第三方的驱动程序安装好后,就可以运行 ...

  6. reactos操作系统实现(3)

    有人说,reactos不是实时操作系统,不能做嵌入式系统,难道真的不能做嵌入式系统吗?其实不是这样的,嵌入式系统本来就包括有两类系统,一种是要求实时性强,一种是要求实时性弱的.这两种都是嵌入式系统.因 ...

  7. reactos操作系统实现(12)

    有了上面的知识,就来分析ReactOS里引导任务是怎么样设置全局描述符表.其工作过程如下图所示: 由于CPU初始化运行后,就当作为一个任务在运行.这里主要设置这个任务的运行保存环境,以便CPU可以交给 ...

  8. reactos操作系统实现(6)

    硬盘引导的流程与相应源码文件名称: 引导序号 引导过程 引导执行代码位数 目标文件名称 1. 主引导代码(Master Boot Record (MBR) code),主要寻找活动分区,然后读入引导扇 ...

  9. reactos操作系统实现(119)

    前介绍了初始化函数ScsiClassInitialize,那么在这个函数里使用下面的语句来查找SCSI的磁盘,如下: if (InitializationData->ClassFindDevic ...

最新文章

  1. yolov3为什么对大目标检测不好_基于改进Yolov3的目标检测的研究
  2. hadoop yarn集群HA安装及配置
  3. 20165230 2017-2018-2 《Java程序设计》第9周学习总结
  4. 原型设计工具:Axure RP Pro 4
  5. 计算机图形学中向量点乘和叉乘的用途_图形学笔记(一):基础知识
  6. UE3 iPhonePackager 工具
  7. c语言是如何实现泛型链表
  8. Java中常见数据结构:list与map -底层如何实现
  9. 如何保护 Apple ID 避免被盜用的风险?
  10. GPGGA NTRIP RTCM 笔记
  11. 一个好玩的在线Android图形可视化开发工具  App Inventor
  12. wps之word设置页眉
  13. 精品餐饮业奢华西餐专业PPT-朴尔PPT
  14. .NET报表设计器ActiveReports入门:操作界面详解
  15. 使用Markdown语法介绍markdown
  16. 小程序的横向二级顶部导航条,可以切换、拖动、二级定位在一级的下面,高度怎么办
  17. Real-SR超分辨网络
  18. 马克思主义哲学(哲学概论)
  19. 联想lenovo sl700 240G sata ps3111主控+未知颗粒 掉盘,ps3111写保护开卡量产修复过程
  20. 位运算实现加减乘除运算

热门文章

  1. 复制幻灯片(包括格式、背景、图片等)到同/另一个PPT文档
  2. 整理后的IMF国际收支统计年鉴数据(2012-2018年)
  3. 关键数据结构 -- sk_buff
  4. 卡梅隆大学计算机博士毕业,卡梅隆大学你了解吗?
  5. PCB打样步骤有哪些?
  6. Tuxedo基本函数的说明(API)
  7. SQLserver 索引碎片
  8. 什么是 MVVM 模式?
  9. Java游戏有易筋经_当年武侠游戏中绝世秘籍易筋经!重置游戏几十次,玩家才终于找到?...
  10. C++ji将txt文件数据zzhua转为数组;