Linux 编写硬盘和键盘驱动程序
我是操作系统的新手,我的目标是编写自己的内核。 我知道我也必须编写自己的设备驱动程序。 如何开始编写驱动程序? 该项目的任务如下 1.用汇编语言定义GDT 2.创建引导扇区 3.中断处理 4.屏幕驱动程序 5.键盘驱动程序 6.硬盘驱动器 7.文件系统 8.I/O编程 9.物理内存管理 也有可能在3个月内做到这一点(2人小组)正如您所知(或即将发现的),操作系统极其复杂且相互关联。例如,在实现中断处理之前,您将如何拥有一个工作正常的键盘驱动程序 听起来你的问题实际上是:“我如何开始编写自己的操作系统?”你从阅读“必备知识”、“初学者错误”和“入门”开始 祝你好运,这将需要很长时间。。。尤其是当你边做边学的时候(这没关系,因为你的目标是学习而不是制作一个商业操作系统) 编辑:修改Linux内核是了解操作系统内部结构的好方法。它会让你专注于个人方面(比如只编写键盘驱动程序),你的工作环境也会很正常。根据您想要做什么,您将能够通过创建内核模块而不是直接修改内核来进一步简化开发Linux 编写硬盘和键盘驱动程序,linux,operating-system,driver,Linux,Operating System,Driver,我是操作系统的新手,我的目标是编写自己的内核。 我知道我也必须编写自己的设备驱动程序。 如何开始编写驱动程序? 该项目的任务如下 1.用汇编语言定义GDT 2.创建引导扇区 3.中断处理 4.屏幕驱动程序 5.键盘驱动程序 6.硬盘驱动器 7.文件系统 8.I/O编程 9.物理内存管理 也有可能在3个月内做到这一点(2人小组)正如您所知(或即将发现的),操作系统极其复杂且相互关联。例如,在实现中断处理之前,您将如何拥有一个工作正常的键盘驱动程序 听起来你的问题实际上是:“我如何开始编写自己的操作
您可以尝试为minix()做贡献
需要做的事情很多。请看一下()。您可以尝试为minix()做出贡献
需要做的事情很多。请看一下()。谢谢。我把操作系统作为一门基于项目的课程来学习。这大约是3个月。学习当然是最重要的,但我仍然需要提交一个项目。(欢迎提出建议)在这种情况下,您可能需要考虑以某种方式修改Linux内核。这会让操作系统弄脏你的手,但让你在保持理智的同时专注于一个方面。同样,看看minix,它有大量的待办事项,你可以学习,也可以为开源贡献重要的一部分。:)《操作系统设计与实现》一书涵盖了minix的设计和代码,你可以在网上免费找到PDF,代码可以下载,这本书介绍了基础知识,另一本书《超级用户Unix》介绍了如何简要编写设备驱动程序,这可能也会有所帮助。谢谢。我以项目为基础学习了操作系统。这本书大约有3个月。学习当然是最重要的,但我仍然需要提交一个项目。(欢迎提出建议)在这种情况下,您可能需要考虑以某种方式修改Linux内核。这会让操作系统弄脏你的手,但让你在保持理智的同时专注于一个方面。同样,看看minix,它有大量的待办事项,你可以学习,也可以为开源贡献重要的一部分。:)《操作系统设计与实现》一书介绍了minix的设计和代码,您可以免费在线找到PDF,代码可以下载,它介绍了基础知识,另一本书《超级用户Unix》介绍了如何简要编写设备驱动程序,这可能也会有所帮助。