
随便把你写过的小程序,用直接写硬盘软件(或者自己编一个,调用winapi的WriteFile函数就可以),写进硬盘/U盘引导区。记住,起始地址是7c00。
这就好了。注意,引导区只有440个字节给你用,程序不能太大,所以这部分基本要用汇编写。440字节后面是硬盘/U盘分区信息,不可以乱动。乱动以后bios可能没法识别硬盘/U盘。
引导区最后两个字节必须是55AA,不过一般你不用管,硬盘/U盘格式化的时候都已经给你写好了。
这样你的程序就在开机的时候直接运行了。
想调用大程序也没问题,你需要写个不超过440字节的程序,负责把第二个扇区的内容载入内存并执行,由第二个扇区的代码负责把所有代码载入内存。后面的部分用C写或者别的高级语言写都没什么问题了。
至于你想要具体作什么,就写什么,屏幕上画个画,管管硬盘上的文件,和用户互动一下,你随意。和你平常写程序没啥两样。总之一个能完成任务的简单 *** 作系统就完事了。
最多几天时间你就能搞定。这差不多能搞个接近dos1.0的“简单 *** 作系统”。
不过接下来才是你真正要学的。例如文件管理,内存管理,保护模式,进程管理啥的。麻烦归麻烦,但解放了自由了,终于可以编写内核态才准用的代码了,做的事情全部都是用户态下面不让做的事情。 *** 作系统的学习,从这里才算真正开始。
以装载和卸载模块为例:
1、首先输入代码
#include <linux/init.h>
#include <linux/module.h>
2、然后输入下方的代码:
static int my_init(void)
{
return 0
}
static void my_exit(void)
3、然后在输入下方的代码:
{
return
}
module_init(my_init)
module_exit(my_exit)这样就完成了。
1、想要学习好Linux就要将它当成兴趣,兴趣才是最好的老师。良好的兴趣才是学习成功好的开始,想要学习好首先就要足够喜欢它。我们要了解市场上Linux的发展势头,了解Linux的相关情况,相信学习好Linux一定要是非常不错的选择。2、学习合适的Linux发行版本,在开始学习Linux之前,首先就是选择一个适合自己的版本,Linux旗下发行版本有服务器版本以及桌面版本,而且桌面版本也可以做服务的,为了以后找工作需要的。常见的Linux发行版本有centos
redhat ubuntu等。
3、选择好Linux学习版本之后,还需要合适的学习资料以及内容,可以到相关的Linux社群看看专业人员的学习机器以及学习手册,了解真正相关的知识。
4、学习Linux架构以及命令,linux下都是通过命令来执行的,要学会用man和命令帮助,熟悉各种常见命令的 *** 作。
5、学习shell脚本,对于专业的Linux人员来说,shell脚本是必须要掌握的。shell脚本是linux下强大的工具,可以通过各种命令组合完成自己的工作,提升自己的工作效率。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)