现代操作系统-基础概念

系统调用:system  call,为了从操作系统中获得服务。用户程序必须使用系统调用以陷入内核并调用操作系统,TRAP指令把用户态切换成内核态,并启用操作系统。

常见的系统调用:fork,execve,open,close,read,write,mkdir,link, mount, chdir, chmod

多线程CPU(也称为超线程CPU):允许CPU保持两个不同的线程状态,然后在纳秒级的时间尺度内来回切换。比如某个进程需要从内存读一个字,可能花费多个时钟周期,CPU可以切换至另一个线程,要注意的是,多线程不提供真正的并行处理,只是一个伪并行。

多核CPU能够保证进行真正的并行处理,而GPU是拥有核心最多的处理器,由上万个微核组成,擅长处理大量并行的简单计算,比如在图像应用中渲染多边形,但是很难对其进行编程。

存储器:在理想情况下,存储器应该极为迅速,充分大,且便宜,但无法同时满足。因此采用分层次的结构:


顶层的是CPU中的寄存器,它们用和CPU一样的材料制成,所以和CPU一样快。

高速缓存:主要由硬件控制,主存被分割为高速缓存行,当程序需要读一个存储字时,高速缓存硬件检查所需要的内容是否在高速缓存中,如果是,则称为高速缓存命中,满足了请求。若未满足,则必须访问内存,会付出大量的时间代价。

在任何缓存系统中,都有若干需要考虑的问题:

1.何时将新内容放入缓存

2.新内容放在缓存的哪一行上

3.在需要时,把哪个内容移走

4。应该把新移走的内容放在较大存储器的何处。

主存:RAM,或者EEPROM还有闪存。


地址空间:通常,每个进程有一些可以使用的地址集合,在最简单的情况下,一个进程拥有的最大地址空间小于主存,这样,进程可以用满其地址空间。

但是在需要32位或者64位地址的计算机中,分别有2^32和2^64字节的地址空间,如果一个进程要比主存还大的地址空间,那么可以使用虚拟内存,操作系统将部分地址空间装入内存,部分留在磁盘,并且在需要时来回交换它们。也就是说,操作系统创建了一个地址空间的抽象,作为进程可以引用地址的集合,地址空间与机器的物理内存解耦,可能大于也可能小于物理空间。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值