从程序设计谈起操作系统

简述一下操作系统:计算机技术发展到今天,从个人计算机到巨型计算机,无一例外都配置了一种或多种操作系统。计算机系统由硬件和软件两部分组成,操作系统是计算机中最重要的系统软件,也是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。 他作为计算机硬件和计算机用户之间的中介为应用程序提供使用基础,并成为整个计算机系统的控制中心。
操作系统主要功能:处理器管理,存储管理,设备管理,文件管理,用户接口管理,网络与通信管理。
操作系统的基本特征:并发性,共享性,虚拟性,不确定性
那么问题是程序设计和操作系统的关系:计算机程序是如何运行的呢?首先先进行编程,而编写的程序是需要以计算机程序设计语言作为基础的。对于大多数编写程序的人来说,使用的编程语言称为高级程序设计语言,如C, C++,Java等,但是计算机并不能是识别高级程序设计语言编写的程序,而这需要编译程序或汇编程序的帮助才能完成。而在一系列的执行过程需要由操作系统的帮助。接下来我们从一个线性的角度来看待从编写开始到最终输出结果的演变,没有考虑各种情况的穿插和交互的过程。用机器语言编写的程序无需进过编译程序的翻译就可以直接在CPU上运行,而用汇编语言写的程序,还需要经过汇编程序翻译才能加载执行。

在这里插入图片描述

由图可以看出程序运行涉及四个方面:①程序设计语言,②编译程序,③操作系统,④硬件指令系统(计算机硬件系统)

第一:程序设计语言,程序设计者需要进行程序的编写编辑,把所写的代码编写到C ,C++等编译器中
第二:编译程序,首先先将编写的程序代码,编译成若干个目标模块,然后由链接程序把所有目标模块和他们需要的库函数连接在一起,形成一个完整的可装入模块,可装入模块通过装入程序装入内存成为可执行程序,把CPU分配给它时就可以投入运行。因此,要是源程序能够运行,必须经过编译,链接和装入这三个步骤。
①简述一下链接的作用:因为无法预先知道程序装入内存的具体位置,因此不可能在程序中直接使用内存地址,只能暂定程序的起始地址为0,于是出现了逻辑地址,逻辑地址通过链接之后变成一个完整的可装入的模块后,装入内存,出现了物理地址,链接三种链接方式(静态链接,装入时动态链接,运行时动态链接) 装入程序的时间不同又分为运行前静态装入和云行是动态装入,两种装入有涉及(静态重定位和动态重定位
第三:操作系统中存储管理,处理器管理,进程同步与通信,设备管理,文件管理五大管理分别在程序运行时发挥相应的作用;
第四:硬件指令系统: CPU,各种寄存器等一系列硬件

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值