标签:操作系统 编程语言 Linux 程序 本质 硬件 应用程序 抽象化
目录
文章目录
操作系统的起源
在操作系统尚不存在的年代,人们通过各种按钮来控制计算机,这一过程非常麻烦。于是,有人开发出了仅仅具有加载和运行功能的监控程序(Supervisor),这就是操作系统的原型。
通过监控程序,程序员可以根据需要将各种应用程序加载到内存中运行。虽然仍旧比较麻烦,但现在开发的工作量得到了很大的缓解。
随着时代的发展,人们在使用监控程序编写程序的过程中发现了很多程序都具有公共的部分。例如:通过键盘进行文字输入,显示器进行数据展示等。如果每编写一个新的应用程序都需要进行相同重复工作的话,那真是太浪费时间了。因此,部分可重用的程序就被追加到了监控程序中。操作系统的原型就是这样诞生的。
逐渐的,人们又发现有更多的应用程序可以追加到监控程序中,比如:硬件控制程序,编程语言处理器(汇编、编译、解析)以及各种应用程序等,结果就形成了和现在差异不大的操作系统,也就是说,其实操作系统是多个程序的集合体。
操作系统和高级编程语言使硬件抽象化
通过使用操作系统提供的系统调用,程序员不必直接编写控制硬件的程序,而且,通过使用高级编程语言,有时也无需考虑系统调用的存在,系统调用往往是自动触发的,操作系统和高级编程语言能够使硬件抽象化,并诞生了程序员这一职业。
#include <stdio.h>
void main(){
// 打开文件
FILE *fp = fopen("MyFile.txt","w");
// 写入文件
fputs("你好", fp);
// 关闭文件
fclose(fp);
}
在上面代码中,物理磁盘被操作系统中的文件系统和 C 语言中的函数抽象化了。
标签:操作系统,编程语言,Linux,程序,本质,硬件,应用程序,抽象化 来源: https://blog.csdn.net/Jmilk/article/details/105893651
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。