Windows|windows怎么启动的?底层依赖什么?

Windows|windows怎么启动的?底层依赖什么?

文章图片

Windows|windows怎么启动的?底层依赖什么?

【Windows|windows怎么启动的?底层依赖什么?】


我们一般平时都是基于操作系统进行应用开发 , 因为操作系统给我们提供了很多系统调用 , 所以很多操作底层的东西 , 都是借助于操作系统帮我们完成的 。



比如用C写了一个windows应用程序 , 那么这个应用程序编译链接后就一定要符合windows可执行程序标准 , 操作系统在加载这个程序的时候会进行检验 , 检验通过会帮你开辟一些程序段 , 代码段 , 堆栈段 , 然后底层创建你对应的程序结构 , 然后找到你程序的入口后你的程序就跑起来了 , 上面就是依托于操作系统程序运行的大概逻辑 。




如果你不依赖操作系统也是可以的 , 你也可以用C写 , 写完编译成机器码 , 然后比较重要的一步是 , 要从bios引导到你的代码 , 这样你的代码也是可以跑起来的 。 但是这种开发方式比较麻烦 , 因为没有现成的系统库能用了 , 很多东西你要自己去做 。




你可以尝试自己写一个小的操作系统 , 需要学的东西有 , 各种架构cpu的开发手册 , 开机引导 , 中断 , 保护模式 , 分页机制 , 各种硬件的操作 , 尝试写进程调度 。 可以去看一些操作系统实现的资料你就明白了 。