复试专业课知识记录(8)
2020.4.1学习记录
1.随机数学基础知识
依据思维导图过一遍书本
参考博客:2019北航计科保研夏令营(非优营)
2.切比雪夫不等式和大数定律
切比雪夫不等式:设随机变量X的E(X)存在,D(X)= \(σ^2\),则对任意的正数 \(ε\) 有:
或
大数定律
棣莫弗—拉普拉斯中心极限定理
参考博客:基本极限定理(切比雪夫不等式,大数定律,中心极限定理)
3.几种重要随机变量的数学期望和方差
参考博客:随机变量的期望和方差
4.线程同步的方式有哪些?
临界资源是指一次仅允许一个线程使用的资源,许多物理设备,如打印机都有这种性质。
临界区指的是一个访问共用资源(被多个线程共享的临界资源)的程序片段,而这些共用资源又无法同时被多个线程访问的特性。
如上所述,同步机制所要解决的绝大多数问题,都出在临界区这儿,我们后面的同步机制都是在临界区上做文章,以避免出现问题。
同步有以下这样些个方式/机制:
信号量(semaphore):每个信号量都是公共资源,其值是一个32位计数。信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意,信号量的值仅能由PV操作来改变。
互斥量(mutex):互斥量是一种公共资源,在指定时刻,它只能被一个线程占有(也就是所有权特性),而且占有它的线程可以反复申请这个互斥量。
参考博客:操作系统常见面试题整理
5.进程有哪几种状态?.
就绪状态:进程已获得除处理机以外的所需资源,等待分配处理机资源
运行状态:占用处理机资源运行,处于此状态的进程数小于等于CPU数
阻塞状态: 进程等待某种条件,在条件满足之前无法执行
6.基本分页存储管理方式
7.基本分段存储管理方式
8.段页式存储管理方式
9.分段和分页的区别
10.进程的通信方式有哪些?
进程间通信方式大概有 管道通信(又分为匿名管道,命名管道,高级管道),信号,消息队列,共享内存,信号量,套接字
(注意区分信号量和信号,不是同一概念)。其中信号是这些方式中唯一的异步通信机制,而套接字可以在不同主机之间通信。
管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。
匿名管道是一个未命名的,单向管道,通过父进程和一个子进程之间传输数据。只能实现本地机器上两个进程之间的通信,而不能实现跨网络的通信。
命名管道是进程间单向或双向管道,建立时指定一个名字,任何进程都可以通过该名字打开管道的另一端,可跨网络通信。
高级管道是将一个程序在另一个进程中打开,作为它的子进程,从而实现管道通信。
信号(signal):其实是软中断信号的简称。用来通知进程发生了异步事件。在软件层次上是对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求是一样的。
信号是进程间通信机制中唯一的异步通信机制,一个进程不必通过任何操作来等待信号的到达。
收到信号的进程对各种信号有不同的处理方法,主要是三类:
1.类似中断的处理程序,对于需要处理的信号,进程可以指定处理函数,由该函数来处理。
2.忽略某个信号,对该信号不做任何处理。
3.对该信号的处理保留系统的默认值,这种缺省操作,对大部分的信号的缺省操作是让进程终止。进程通过系统调用signal来指定进程对某个信号的处理行为。
消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。每个数据块都被认为含有一个类型,接收进程可以独立的接收含有不同类型的数据结构。可以通过发送消息来避免命名管道的同步和阻塞问题。
共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。
进程可以将同一段共享内存连接到他们自己的地址空间中,所有进程都可以访问共享内存中的地址。
信号量:为了防止出现因多个程序同时访问一个共享资源而引发的一系列问题,我们需要一种方法,它可以通过生成并使用令牌来授权,在任一时刻只能有一个执行线程访问代码的临界区域。
临界区域是指执行数据更新的代码需要独占式的执行。而信号量就可以提供这样的一种访问机制。让一个临界区同一时间只有一个线程在访问它,也就是说信号量是用来协调对共享资源访问的。
11.常见调度算法
先来先服务调度算法、短作业(进程)优先调度算法、优先权调度算法的类型(分为非抢占和抢占式)、高响应比优先调度算法、基于时间片的轮转调度算法,多级反馈队列调度算法。
参考博客:几个常用的操作系统进程调度算法