百科问答小站 logo
百科问答小站 font logo



程序在编译的时候,会转换成汇编,然后是机器指令,那么运行的时候,操作系统充当什么呢? 第1页

  

user avatar   s.invalid 网友的相关建议: 
      

你大学毕业了,能独立自主了,是不是从此就可以六亲不认无君无父无政府了呢?


同样的,二进制的机器指令文件仍然要通过一定的手法使用操作系统提供的服务。这些服务可以帮助你和网络通讯(而不需要自己实现TCP协议栈那一筐一筐的算法)、可以让你轻易的访问磁盘(而不需要自己搞明白上面有多少个扇区、哪个扇区有内容不能覆盖、怎么组织数据读写速度快不容易出碎片、万一突然断电如何恢复数据避免文件系统被捣毁)……


除非你不使用操作系统提供的任何服务——包括把你的可执行文件加载进内存并跳转到第一条指令的服务——自己实现一切的一切;否则,你照样需要军队来保护你不受侵略、警察来保护你不被抢被杀被奴役、淘宝来卖给你各种好用的货物、快递公司给你把货物送到手……并且,你看不见的,每一件货物都需要工厂生产、每一家工厂都要采购原料、所有原料都来自各种矿业公司/化学合成公司……


除非你一个人实现这所有,你才能真正脱离社会,成为一个自由自在的……野人。




  

相关话题

  最短的可以造成崩溃且编译器无法优化掉的 C++ 代码是什么? 
  如果让计算机不使用操作系统做服务器性能上是否会更有优势? 
  SpaceX 龙飞船中的新触控交互操作系统,意味着什么? 
  当初Linux的作者想写一个操作系统,结果全世界外国人帮他写完;如今我也想写一个,为啥国内没人帮我? 
  操作系统里面经常说的一个功能用「软件实现」还是用「硬件实现」,其本质区别是什么? 
  如何证明我们生存在模拟的宇宙? 
  为什么总有人极力推荐使用命令行操作而非图形界面? 
  都说操作系统难开发,那为什么微软在90年代就能开发出Windows呢? 
  C++ 难在哪? 
  从操作系统内存管理来说,malloc申请一块内存的背后原理是什么? 

前一个讨论
没有信息输入,人还能思考吗?
下一个讨论
C++中 int n = 0ULL - 1; 是 UB 未定义行为吗?





© 2025-05-06 - tinynew.org. All Rights Reserved.
© 2025-05-06 - tinynew.org. 保留所有权利