程序的执行

一、现代操作系统的两大硬件技术:
1、中断技术:CUP在正常运行程序时,由于内部或外部事件引起CPU暂时终止实行现行程序,转去执行CPU为其服务的那个外设或时间的服务程序,待该服务程序执行完后又返回到被重视的程序这样一个技术

2、外设与CPU的并行工作:外设的工作依赖CPU的控制,CPU只需给外设发送控制命令,外设就可独立工作。

二、  操作系统的作用
           1、改善人机界面

              2、控制程序运行

              3、管理计算机系统的硬件、软件及数据资源;

              4、为其他应用软件提供支持(为程序员提供API)

三、   程序的顺序执行
              1、同一程序的若干程序段之顺序执行;不同程序之间顺序执行

              2、特点:

顺序性:前一操作完成,后一操作才能进行

              封闭性:程序在封闭的环境下循行,即程序运行时独占全部系统资源

              可再现性:只要程序执行时的环境相同,程序每次运行结果相同。

              但是程序顺序执行导致系统资源利用率不足

四、   程序的并发执行
              宏观上看是多个程序同时执行,微观上看是多个程序分时占用CPU。这种程序的运行方式为并发执行。

方法执行时的新特征:

间断性:程序在比并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的程序之间形成了相互制约的关系。(当图中C1已经数据处理完毕时,I2还没有输入那么C2就得进入暂停,当使C2暂停的因素消失后(I2输入),程序继续执行)由此可见,相互制约将导致并发程序具有“执行—暂停—执行”这种间断性的活动规律

失去封闭性:当系统中存在多个可以并发执行的程序时,系统中的各个资源将为它们做所共享,而这些资源的状态也有这些程序来改变,致使在其中任一程序在运行时,其环境都必然会收到其它程序的影响。Eg,当处理机已分配给某个进=进程运行时,其他的程序必须等待。

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.0.4.RELEASE</version>
</parent>

<dependencies>
<dependency><!--添加Web依赖 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-www.xgll521.com yongshiyule178.com starter-web</artifactId>
</dependency>
<dependency><!--添加MySql依赖 -->
<groupId>mysql<www.michenggw.com /groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency><!--添加Mybatis依赖 配置mybatis的一些初始化的东西-->
<groupId>org.mybatis www.yigouyule2.cn.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<dependency><!-- 添加mybatis依赖 -->
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5<www.ysyl157.com /version>
<scope>compile</scope>
</dependency>
</dependencies>

不可再现性:当程序并发执行时,由于失去了封闭性,也导致失去了不可再现性。Eg,有两个循环程序A,B它们共享一个变量N。程序A每执行一次都要执行N=N+1操作,程序每执行一次都要print(N),然后把N置成0,程序AB以不同的速度运行。这样的话会出现三种不同的结果,多以程序在并发执行时,由于失去了封闭性,其计算结果必将与并发程序的执行速有关,从而使程序失去了可再现性。

对并发执行的程序如果加以管理就能保证程序的可再现性

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值