【操作系统】操作系统的自我认识及原码、反码和补码

操作系统是一个系统软件,但是它具有呈上启下的作用,它是计算机硬件之上的第一层软件。
对于我们所编写的程序,它们以文件的形式存放在磁盘上。在运行之前,操作系统会把它们调入到内存,然后在CPU上运行,产生的结果在屏幕上显示出来。
CPU的运行模式又分为核心态用户态,所以,当CPU执行到用户程序的系统调用(如使用c语言中的fread()从文件中读取数据这条语句时,它会进行系统调用)时,CPU的状态就从用户态变为核心态,从而进入操作系统的内部,执行它的有关代码,实现操作系统对外的服务。当系统调用完成后,控制权返回给用户程序。

计算机存储体系的速度:1.寄存器组(提高运行速度,减少内存访问)2.高速缓存(高速缓冲区)3.内存4.外存。
寄存器在CPU中,而内存是挂在CPU外面的数据总线上。寄存器交换数据的速度比内存更快,体积更小,但是价格也比内存单元贵。所以CPU用寄存器来提高CPU速度。以至于内存比CPU慢至少一个数量级。但是寄存器从内存中去地址后,会造成一种威胁——寄存器和内存“两张皮”(地址一样)。因为CPU和内存速度不一样,会造成CPU在等待内存,造成浪费。

操作系统的逻辑结构:整体式结构、层次式结构、微内核结构(客户/服务器结构)。
整体式结构:以模块为基本单位,像c、java等语言。缺点:信息调用太随意,复杂,难理解,维护困难。
层次式结构:所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖或单向调用。
微内核:微内核+核外服务器
微内核足够小,提供OS最基本的核心功能和服务,核外服务器完成了OS的绝大部分服务功能,等待应用程序提出请求。由于每个服务器都在用户态下运行(不再核心态下运行),因此,单个服务器出现故障(或重新启动)不会引起整个系统崩溃。

操作系统有以下几种功能:进程管理、文件管理、设备管理、存储管理、提供用户接口。其中进程管理和文件管理是一个操作系统有别于其他系统的。

操作系统经历了早期的手工操作系统、单道批处理系统,才发展为现在的多道批处理系统,分时操作系统、实时操作系统等系统。
早期手工操作系统资源浪费、使用不便。单道批处理系统,CPU有时运行,有时空闲,效率低。而多道批处理技术,CPU充分运行,效率高,在宏观上表现为多道并行,但是也有自身的缺点,作业处理时间长,交互能力差,运行过程不确定。
随着中断技术(中断当前任务,去执行其他任务,执行完后可以返回去继续执行当前任务)、通道技术(外设与内存之间的数据传输)还有分时技术(若干并发程序对CPU时间的共享)等的发展,出现了分时操作系统,它解决了多批到处理系统的缺点,交互性高,响应速度快。
中断技术的引用可以实现并发活动、实时处理、故障自动处理。
原码、反码和补码
原码是一个数的本身,将它的值转换成二进制所得到的数,这就是它的原码。
例如:
5的原码为:0000 0101
7的原码为:0000 0111
反码是原码的"相反数",对于无符号数来说,每一位按位取反,结果就是其反码;对于有符号数来说,除符号位外每一位按位取反,结果就是其反码。
例如:
+5的反码:0111 1010
-7的反码:1111 1000
负数的补码是,原码除符号为外,按位取反,末位加1;正数的原码和补码一样。
例如:
5的补码:0000 0101
-7的补码:1111 1001
对于两个数之间的运算(+ -),必须都转换成补码才能运算;可以说,在计算机中,不存在原码。
例如:
5 - 3 = 2
5的补码: 0000 0101
-3的补码: 1111 1101
相加得: 0000 0010 因为最高位为0,所以是正数,正数的原码等于补码,所以结果位2。
-3-7 = -10
-3的补码:1111 1101
-7的补码:1111 1001
相加得: 1111 0110 因为最高位为1,所以为负数,负数的原码等于补码减一再除符号位外按位取反。所以结果为:1000 1010 为-10.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值