computer 操作系统概念

交互空间

  当物理内存吃紧时,Linux会将内存中不常访问的数据保存到Swap(交互空间)上,这样系统就有更多的物理内存为各个进程服务,当系统需要访问Swap上存储的内容时,在将Swap上的数据加载到内存中

  目的的缺点:在一定程序解决内存不足的情况,但是其需要读写磁盘数据,性能不是很高

  注意:一般可以通过观察交换空间的换入和换出来确定内存情况

上下文切换

  每个CPU(单核或多核CPU中每核)在同一时间只能执行一个线程(Linux采用的是抢占式调度)

  抢占式调度:为每个线程分配一定的时间,当到达执行时间,线程中有IO阻塞或高优先级线程要执行时,Linux将切换执行的线程,在切换时要存储目前执行线程的执行状态PCB(program Control Block),并恢复要执行的线程状态

  Java应用: 文件IO,网络IO,锁等待,线程Sleep时,当前线程会进入阻塞或休眠状态,从而触发上下文切换,上下文切换过多会造成内核占用较多的CPU使用,使得应用的响应速度下降

运行队列

  每个CPU核都维护了一个可运行队列

  例如:一个4核的CPU,Java应用中启动了8个线程,且这8个线程都处于可运行状态,那么在分配平均的情况下每个CPU中的运行里就会有两个线程

扫描二维码关注公众号,回复: 5661892 查看本文章

  运行队列值越大,就意味着线程要消耗越长的时间才能执行完

用户空间和内核空间

  linux系统将自身划分为两部分,一部分为核心软件,称作内核空间,另一部分普通应用程序,称为用户空间

  目的:存储器保护机制的一环,内核,核心扩充,驱动程序,运行在核心空间上,而其他的应用程序,则运行在用户空间上

  

  

猜你喜欢

转载自www.cnblogs.com/hpzhu/p/10598258.html
今日推荐