自制操作系统(八)

现在是源代码,是需要编译的,整个过程是用nask也好,GCC也好,最后变成一个二进制文件而已,仅仅是一个文件而已,然后这个文件直接拷贝到内存,它掌控着所有,反正不管怎么说,现在初级阶段就进行分文件夹是不对的,没有什么意义。

这回是要进行命名的,如何命名呢?
常量,宏定义都是大写字母
全局变量是l开头的,后面跟大写而不是下划线
普通变量,开头小写,中间大写
函数,如果有类就好了,但是没有类,有主谓型函数,有谓宾型函数,开头大写,中间也大写
结构体,枚举类型是首字母大写。
下划线用于跟在后面,用来描述属性用

尽量不缩写,那么现在的话,,,,,我的目标就是实现我那个操作系统而已,至于里面的精巧结构。。。如果说把所有东西都看成类的话,显然用C语言并不合适。。。既然我用C语言,那么实现类的话,我只能实现静态单例模式,如果这样的话,对于一个单实例类,类名大写,类变量小写,类常量大写,类函数也小写吧,尽量不缩写,中间用下划线相连接,例如System_run(),emmmm,感觉不错。。。当然了,用static来定义,感觉不错。这样就会少很多没有意义的全局变量了。

计划呢,就是从2.02版开始,实现自主canvas,鼠标键盘控制等等,最后实现能够在那个系统上编译程序,然后成为日常可用系统即可。

应用程序如何进入内核态呢?执行系统调用,int 80好像是硬件指定的。

还有内核栈。内核在创建进程的时候,在创建task_struct的同时,会为进程创建相应的堆栈。每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存 在于内核空间。当进程在用户空间运行时,cpu堆栈指针寄存器里面的内容是用户堆栈地址,使用用户栈;当进程在内核空间时,cpu堆栈指针寄存器里面的内 容是内核栈空间地址,使用内核栈。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值