操作系统—中断和异常、磁盘调度算法、操作系统其他内容

异常

时常由CPU*执行指令的内部事件引起,比如非法操作码、地址越界、算术溢出等,还有缺页异常、除0异常。同时,他会发送给内核,要求内核处理这些异常

外中断

狭义上的中断指的就是外中断。由CPU执行指令以外的事件引起,比如I/O完成中断。此外还有时钟中断、控制台中断等。
中断是由硬件设备产生的,而他们从物理上来说就是电信号。之后通过中断控制器发送给CPU,然后CPU判断收到的中断来自哪个硬件设备(这定义在内核中),最后,由CPU发送给内核,有内核处理中断。
图片来源阿秀的学习笔记
在这里插入图片描述

中断和异常的区别与相似点

相似点

  • 都是由CPU发送给内核,由内核去处理

不同

  • 异常由CPU产生,中断由硬件设备产生
  • 内核需要根据是异常还是中断调用不同的处理程序
  • 中断不是时钟同步的,这意味着中断有可能随时到来;异常是由CPU产生的,所以是时钟同步的
  • 处理中断的时候,处于中断上下文;处理异常的时候,处于进程上下文中

磁盘调度算法

影响读写一个磁盘块时间的因素包括:旋转时间(将磁头移动到适当的扇区上)、寻道时间(将磁头移动到合适的磁道上)、实际数据传输时间。其中,寻道时间最长

  • 先来先服务
  • 最短寻道时间优先
  • 电梯扫描

ASCII,UNICODE,UTF-8的关系

  • 计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
  • 记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里;编辑完成之后,保存的时候再把Unicode转换为UTF-8保存到文件。
  • 浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器。

冯诺依曼结构

  • 存储器:内存
  • 控制器:南桥北桥
  • 运算器:CPU
  • 输入设备:键盘
  • 输出设备:显示器、网卡

服务器高并发解决方案

  • 应用数据与静态资源分离,将静态资源单独保存到专门的静态资源服务器中
  • 客户端缓存:网站上的页面尽可能用静态的来实现,页面过期或者有数据更新之后,再将页面重新缓存。或者先生成静态页面,然后用ajax异步请求获取动态数据
  • 集群和分布式,集群是所有服务器有相同功能,起到分流作用;分布式是将不同的业务放到不同的服务器中。可以使用服务器集群和分布式架构,使得原本属于一个服务器的计算压力分散到多个服务器上。
  • 反向代理:服务器通过别的服务器获取资源或者结果返回给客户端。

猜你喜欢

转载自blog.csdn.net/qaaaaaaz/article/details/131403041
今日推荐