手把手以实例教你在DOSBOX模拟器上入门UCOS-II操作系统(包含各种DOS命令操作、makefile文件和BAT批处理文件的使用)

目录

前言

一、说明

二、E盘根目录下放置BC31和SOFTWARE文件夹

 三、修改应用文件夹名

四、 将原工作目录WORK换成MYWORK

五、 修改C文件TEST.C的名称

六、E盘根目录创建批处理文件

1.方法一(需要改两个文件)

2.方法二(只需要改一个文件)

七、Makefile文件规则及其在C程序编译中的作用

八、参考文献or资料

总结


前言

        操作系统 (英语:Operating System,缩写:OS) 是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序。根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。本文从实例出发详细介绍一下UCOS-II和DOSBOX的入门级使用,希望对各位有所帮助。


提示:以下是本篇文章正文内容,写文章实属不易,希望能帮助到各位,转载请附上链接。

一、说明

        如下图所示是本人学习嵌入式实时操作系统ucos-ii时老师布置的第一次作业,作业要求我们对DOSBOX、BC31和SOFTWARE所涉及到的文件有一个初步的认识。本人也是刚刚学习嵌入式,感觉还是有一定的难度。做之前,本人也是一脸懵逼,做完之后大概对嵌入式有了那么一点点的认识。前前后后花了得有十来个小时才把它给搞定。在此,将完成该作业(除6以外)的所有详细步骤记录下来,希望能帮助到各位刚刚开始学习ucos-ii操作系统的小伙伴。对了,操作之前最好把任哲编写的《嵌入式实时操作系统ucos-ii原理及应用》第四版的2.1、2.2、2.3三小节仔细看下,不然操作完了也不知道原理。

二、E盘根目录下放置BC31和SOFTWARE文件夹

        将BC31和SOFTWARE放置到E盘根目录如下图所示。

         1. 将DOSBOX路径下的OVL文件复制到BC31的BIN路径下,不复制在后面的操作中会报错,无法正常操作。没有OVL这个文件的伙伴可参考文章末尾参考文献[2]这篇博客里面的链接获取。

        2 由于BC31和SOFTWARE安装的路径不在C盘,所以接下来修改一些文件中的参数。进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/SOURCE/,用写字板或者记事本打开test.lnk文件,

 修改为:

 修改完后保存关闭。

        3 再进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/TEST/,用软件打开TEST.MAK文件,能打开它的东西都行,我这里用的是Notepad++代码编辑器。打开将BORLAND变量修改成自己安装的E盘,即下图所示后保存后关闭。

         4 最后打开同目录下的MAKETEST.BAT批处理文件,编辑成下图所示的样子。编辑完成后保存关闭。

 三、修改应用文件夹名

        将EX1_X86L修改为myproj20203659。

四、 将原工作目录WORK换成MYWORK

        1.再进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/TEST/,用软件打开MAKETEST.BAT文件,将WORK换成MYWORK。其中MD命令表示创建文件夹,CD命令表示进入文件夹,COPY表示复制文件。

         2.打开安装好的DOSBOX0.74软件,在命令行输入以下命令,进入E盘。

         其中mount命名用来虚拟盘符。

        依次输入以下命令。其中cd为切换目录命令,del为删除文件命令。由于DOSBOX命名不区分大小写,所以输入命令时小写也可以。每次输完命令都是按下回车键执行命令。

         这里需要注意一下进入myproj20203659时要输入myproj~1,因为DOSBOX识别的命名字符不能超过8个。(这里还好,输错了它会给提示,修改TEST.C的时候里面名字也要注意这个规则,当时没发现至少浪费了我三个小时,一直报错说找不到myc20203659.c,网上根本找不到解决办法,后来通过dir/w命令才发现自己修改的myc20203659.c是存在的,只是DOSBOX将myc20203659.c判断为myc202~1.c,就是因为DOSBOX识别的命名字符不能超过8个,所以大家切记这个规则,太恶心了,第一次见最大命名字符这么短的)。

         最后输完maketest.bat命令按下回车后DOSBOX就开始编译链接了,完成之后会重新生成一个TEST.C文件,同时还会多出下图所示三个文件夹。其中LST在这个例子中没啥用,OBJ用来存放编译生成的.OBJ文件,MYWORK就是一个临时工作目录,为编译和链接提供一个场所。

五、 修改C文件TEST.C的名称

        将TEST.C改成下图所示的名称。

          进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/TEST/,用软件打开TEST.MAK文件,修改为下图所示的样子。

         进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/SOURCE/,用写字板或者记事本打开test.lnk文件,修改为:

        改完成后保存关闭。

        重新打开DOXBOX输入以下命令,最后一个命令输入按下回车后会编译链接。

         编译完成后,会生成下图所示的.obj文件,这个就是myc20203659.c编译后形成的.obj文件。

六、E盘根目录创建批处理文件

1.方法一(需要改两个文件)

        将下图文件复制到E盘根目录并重新命名。

         并打开mybat20203659.BAT批处理文件修改为下图所示内容。

         进入E:/SOFTWARE/uCOS-II/EX1_x86L/BC45/TEST/,用软件打开TEST.MAK文件,添加下图所示的一句代码,添加完后保存关闭。

         删除下图所示的TEST.EXE。

         重新打开DOSBOX输入以下命令,输入完最后的mybat2~1.bat按下回车后就会编译链接,完成之后就能在E盘根目录找到TEST.EXE了。

2.方法二(只需要改一个文件)

            将下图文件复制到E盘根目录并重新命名。

        并打开mybat20203659.BAT批处理文件修改为下图所示内容。

         删除下图所示的TEST.EXE。

        重新打开DOSBOX输入以下命令,输入完最后的mybat2~1.bat按下回车后就会编译链接,完成之后就能在E盘根目录找到TEST.EXE了。

七、Makefile文件规则及其在C程序编译中的作用

        关于这个问题,我的理解如下图所示。

八、参考文献or资料

[1] t_larry.PC环境下用BC3.1编译连接调试uC/OS-II源文件[DB/OL].http://t.csdn.cn/4fy29,2006.

[2] DDMiao~.在WIN10上使用BC3.1[DB/OL].http://t.csdn.cn/SUjBa,2018.

[3] 缘之妙不可言.(有图片)汇编工具dosbox下自动mount及切换虚拟目录使用步骤[DB/OL].http://t.csdn.cn/CWwav,2020.

[4]https://www.bilibili.com/video/BV1Dx411W7KB/?spm_id_from=333.337.search-card.all.click&vd_source=f18c75fb1f08fcaa24a9e5409179aa1d 这个视频是讲mount命令使用方法的。


总结

        以上就是今天要讲的内容,本文从具体的操作出发详细介绍了一些DOSBOX入门级的操作方法,同时还介绍了BC31和SOFTWARE相关的一些知识。写这篇博客前前后后得花了我4小时吧,希望对各位小伙伴有所帮助。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐