当前位置:首页 > 开发工具及运维 > (01)开发环境准备

(01)开发环境准备

6个月前 (05-21)61


近期在看《30天自制操作系统》、《一个64位操作系统的设计与实现》、linux-2.4.36内核源码,于是就想自制一个属于自己的操作系统。
现开设此专栏,目标是从零开始自制一个64位的操作系统。麻雀虽小五脏俱全,所以我的操作系统要有图形界面、有内存管理、进程管理、中断管理、相应外设驱动。

本专栏会持续更新,直至开发出一个完整的64位操作系统。如有兴趣,请订阅收藏。如有疑问,也请评论留言。

本专栏的所有代码位于GitHub: https://github.com/xqd-githup/xqd-os

开发环境

工欲善其事必先利其器,开发的第一步当然是准备开发环境

操作系统

Linux

为方便开发,建议使用Linux桌面系统,原因有两个:

  1. Linux有很多现成的开发工具,安装也方便,尤其是GCC对Linux非常友好。
  2. 开发过程中会有图形界面交互,所以必须使用Linux桌面系统

我这里使用的是xubuntu: https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cdimage/xubuntu/releases/20.04/release/

Windows

如果特别排斥Linux,想使用Windows开发的话,可以直接跳到下面的windows系统的开发环境

开发工具

用于编译代码:

apt-get install gcc make nasm

  • gcc 用于编译C程序
  • make用于批量编译
  • nasm用于编译汇编、反汇编程序

下载sublimetext:https://www.sublimetext.com/download,用于代码编辑,如果vim特别熟练的可以不安装。

硬件模拟

不可能每次开发之后,都部署到专门的硬盘上,然后重启系统观察运行效果。这样既不方便开发,也不方便调试,所以需要一个方便模拟运行的软件。
我这里使用的是bochs,非常小巧(只有7MB),而且方便调试,用于模拟器计算机,相当于vmware、visualbox之类的软件。

apt-get install bochs bochs-x

windows系统的开发环境

  1. 必须是win10
  2. 需要安装Linux子系统,可以参考win10搭建Ubuntu子系统(wls)
  3. 在Windows中安装bochs,下载地址
  4. 将bochs的目录(我的是C:\Program Files\Bochs-2.6.11)加入环境变量

WSL(Windows Subsystem for Linux)是一个很神奇的东西,它几乎具备了原生Linux的所有功能,但是又跟win10共享CPU、内存、硬盘,甚至连环境变量也是共享的,Ubuntu子系统可以直接运行Windows下的exe应用程序。
这里安装Ubuntu子系统的目的只有一个,就是安装GCC,因为我们的汇编、C程序都是需要靠GCC来编译的。本来window下也有一些GCC的编译环境,如mingw、cygwin等,但是里面的gcc都是阉割版,开发普通的Windows应用绰绰有余,但是开发OS就有点力不从心了。
综上,只有gcc需要在Linux子系统安装,其他软件都装在Windows上。

在Linux子系统上执行命令:sudo apt-get install gcc make
(01)开发环境准备 _ Java侠
然后执行vi .bashrc,在最后面加入:

alias bochs='/mnt/c/Program\ Files/Bochs-2.6.11/bochs.exe'
alias bximage='/mnt/c/Program\ Files/Bochs-2.6.11/bximage.exe'

解释一下:

  1. windows的C盘对应子系统的/mnt/c
  2. Program Files这个目录中间的空格,需要用反斜杠转义

执行: . .bashrc 让配置生效,这样开发环境就配置好啦。

结束

到此为止,开发一个操作系统所需要的所有工具都已准备完毕,接下来将使用这些工具开发一个helloWord级别的操作系统引导程序,并观察运行效果。

请参考下一节:(02)第一个操作系统引导程序

作者:x其东
来源链接:https://blog.csdn.net/xuqidong5/article/details/122796307

标签: 开发工具

“(01)开发环境准备” 的相关文章

12 款适用于开发人员的最佳 Web 开发软件

12 款适用于开发人员的最佳 Web 开发软件

如果您正在寻找最好的 Web 开发软件,那么您可能会对从哪里开始构建网站感到有些困惑。对于我们大多数人来说,构建网站或做任何与 Web 开发相关的事情都...

使用eclipse作为python开发工具安装旧版pydev

使用eclipse作为python开发工具安装旧版pydev

在Eclipse中: Help->Install New Software add之后输入的链接地址 https://dl.bintray.com/fabio...

恒玄BES系列开发编译环境搭建(windows和linux下)

恒玄BES系列开发编译环境搭建(windows和linux下)

1.windows开发环境搭建 准备工具链 工具链下载地址ARMGNU工具链.zip_恒玄开发工具-C其他资源-CSDN下载 两个工具安装顺序无所谓...

查看jdk(java开发工具包)安装路径的方法

查看jdk(java开发工具包)安装路径的方法

查看jdk(java开发工具包)安装路径的方法 下面以操作系统是Windows10计算机为例介绍。 若已经安装好了jdk(java开发工具包),也配置了环...

Silicon Labs 8 位微控制器开发工具

Silicon Labs 8 位微控制器开发工具 Silicon Labs IDE Silicon Labs 集成开发环境 (IDE) 是一个完整独...

开发工具|H5微应用本地开发新姿势

开发工具|H5微应用本地开发新姿势

你在本地开发H5微应用时也遇到了这些问题?: 1. 不知道如何调试 2. 不知道如何将本地的页面在钉钉客户端内打开来调试JSA...

STM32入门系列-开发工具keil5安装

STM32入门系列-开发工具keil5安装

主要介绍如下三部分内容: keil5软件获取 keil5安装 安装STM32芯片包 软件获取   &n...

六、Note开发工具Visual Studio Code下载安装以及Visual Studio Code的使用

六、Note开发工具Visual Studio Code下载安装以及Visual Studio Code的使用

专业的人干专业的事,我们搞Node总不能真的使用文本编辑器傻乎乎的搞吧,文本编辑器来开发Node程序,效率太低,运行Node程序还需要在命令行单独敲命令。如果还需要调试程序,就更加麻烦了...

.NET开发常用工具大盘点

.NET开发常用工具大盘点

标签: .NET 概述:本文盘点了.NET开发中的常用工具、插件及管理软件。...

安装Goland开发工具

安装Goland开发工具

安装Goland开发工具 开发工具: 文本类的编辑器:记事本,notepad,sublime text,atom。。。 ​ 通过命令执行程序 IED:集成开发环境...