软考-嵌入式系统设计师:[嵌入式系统软件及操作系统:笔记(二)]

计算机软考中级考试通过后,就可以成为中级的软件工程师,不需要再去评级,所以还是很有必要去考的,第一部分的笔记分享完之后,我会将PDF上传到资源,大家有需要的可以下载打印,我会尽量把自己理解到的东西用更容易懂的话写出来,一家之言,如果有错欢迎指正批评,望共同进步。

嵌入式系统软件及操作系统

  • 嵌入式系统软件及操作系统
    • 5、任务管理
      • 1. 进程的状态
      • 2. 同步与互斥(下午考大题)
      • 3. 信号量操作(下午考大题)
      • 4. 进程调度
    • 6、存储管理
      • 1. 分区存储管理
      • 2. 分页存储管理
      • 3. 段式存储管理
    • 7、文件系统(只考选择题)
      • 1. 嵌入式文件系统
      • 2. 文件结构
    • 8、设备管理(一般只考选择题)
      • 1. 输入输出技术
      • 2. 虚设备和SPOOLING

嵌入式系统软件及操作系统

5、任务管理

1. 进程的状态

进程:是资源分配的基本单元,程序执行的一个实例,程序运行后创建一个进程,将进程放入进程就绪队列,当CPU分配给它时间时,程序开始运行。
线程:线程是独立调度的最小单元,(简单理解线程就是小进程),线程可以共享进程的公共资源(数据、变量、代码、文件等),但不能贡献独有的资源,如线程的栈指针等。
任务:在嵌入式操作系统中,任务可以是进程,也可以是线程。暂时可以将任务与进程混为一谈,后期再做区分。
进程在,就绪态、运行态、等待态,(静止就绪、静止阻塞)三态中进行切换。

2. 同步与互斥(下午考大题)

前趋图反应的是任务并行(多个任务可以同时)执行还是串行(一个执行完之后才能开始下一个)执行。
进程资源图用来表示进程和资源之间分配和请求关系。
阻塞结点:某个进程所请求的资源全部分配完毕,无法获取所需的资源,进程无法继续。
非阻塞结点:某个进程所请求的资源还有剩余,可以分配给该进程,使得进程继续。
互斥与同步:互斥是指同一个资源在同一时间只能被一个任务使用,在使用过程中加锁,使用完后解锁才能被别的任务使用。同步是指两个任务可以同时执行。

3. 信号量操作(下午考大题)

临界资源:各个进程间需要互斥方式对其进行共享的资源。
临界区:每个进程中访问临界资源的代码。
信号量:一个特殊的变量。
互斥信号量:对临界资源采用互斥访问,使用互斥信号量后其他资源无法访问,初值为1.
同步信号量:对共享资源的访问控制。
P操作和V操作:P操作的功能是消耗一个信号量,如果信号量没有了就阻塞,V操作的功能是增加一个信号量。如果之前进入了阻塞,就把其恢复到就绪态再增加一个信号量。

4. 进程调度

抢占式和非抢占式:抢占式内核中,高优先级的任务可以中断低优先级的任务,将其挂起,优先抢占CPU资源。非抢占式内核中,高等级优先级不能中止低等级优先级的任务,必须等其执行完才能执行高优先级的任务。
调度算法:先来先服务(先到的进行优先分配CPU)、时间片轮转(每个进程的CPU时间相同,不停轮转)、优先级调度(优先级高的先执行)、多级反馈调度(时间片轮转与优先级调度相结合)
死锁问题:一个进程在等待永远不可能发生的事件,就会陷入死锁,多个进程陷入死锁,整个系统就会陷入死锁。
死锁产生的条件:资源互斥、每个进程占用资源且等待其他资源、系统不能剥夺进程资源、进程资源图是个环路。
操作系统为了解决死锁的方法:限制进程对于资源的请求、采用银行家算法(计算不会死锁的资源分配方法)、检测到死锁后设法解除(撤销进程或者强制剥夺资源)。
死锁资源计算:n个进程,一个进程需要R个资源,发生死锁的最大资源数n*(R-1),为了不发生死锁,最少要有n*(R-1)+1个资源。
任务通信:有低级通信(传递状态和整数值,如信号量机制)和高级通信(能够传递任意数量的数据,如共享内存(共用一个缓冲区)、消息传递(通过收发消息来交换信息)、管道(以文件系统为基础,连接两个任务之间的一个共享文件))。

6、存储管理

1. 分区存储管理

固定分区:静态分区,将主存分为若干个固定分区,将要运行的作业装配进去,会产生内部碎片。(就是标准大小,然后塞入)
可变分区:动态分区,将作业转入时划分,不产生内部碎片,但会产生外部碎片。(类似量身定做)。
可重定位分区:可以解决碎片问题,移动所有已经分配的区域,使其连接成为一个连续的空间,将小碎片合成大的分区,只在存储空间不足时进行。

2. 分页存储管理

页式存储管理原理:当程序运行所需的内存大小大于系统内存时,整存无法将整个进程调入内存,这就需要采用段页式存储。页式存储式将进程空间分为一个个页,然后将物理空间也分为一个个相应大小的物理块,这样执行完一块之后再装入另外一块,解决了空间极大的进程运行问题。(就是进程太大了,切成小块放入同样切成小块的物理空间,运行完一个小块后装载下一个小块继续运行)。通过页表去对应物理块。优点:利用率高,碎片小,分配及管理简单;缺点:增加了系统开销,产生了抖动。
物理地址与逻辑地址的转换:地址组成:页地址(高位)+页内偏移地址(低位);物理地址:物理块号+页内偏移地址;逻辑地址:页号+页内偏移地址;只需要知道页号与物理块号的对应关系即可求出物理地址与逻辑地址的对应关系(找个例题看立马就能懂)。
页面置换算法:进程空间所需的要分配的物理块不足,需要通过置换算法,将多的进程页面按要执行的顺序调入物理块中执行,置换算法有:最佳页面替换算法(理论上无法实现,就是将马上执行的进程页放入物理块中)、先进先出算法(先调入内存的页先被置换,会出现抖动效率低)、最近最少使用算法(最近最少使用的先被置换,效率高)、淘汰原则(优先淘汰最近未被访问的);
快表:速度最快的存储器,一般存放当前访问最频繁的页号,快表在cache中,慢表在内存中。

3. 段式存储管理

段式存储管理及地址表示:将进程空间分为一个个段,每段也有段号和段内地址,与页式存储不同的是,每段物理大小不同,根据逻辑整体分段,优点:多道程序共享内存,各段程序修改互不影响。缺点:内存利用率低。地址对应的内存地址:端号对应的基地址+段内偏移(做道题就能懂)。
综上所述:分页式根据物理空间划分,每页大小相同,分段式根据逻辑空间划分,每段是个完整的功能,便于共享,但物理空间大小不同。
段页式存储管理原理:先分段,后分页,优点是空间浪费小、存储共享容易,存储保护容易,能动态链接。缺点是,执行速度慢。

7、文件系统(只考选择题)

1. 嵌入式文件系统

文件系统原理:文件系统就是操作系统中用以组织、存储、命名、使用和保护文件的一套管理机制。文件系统负责文件的组织、存储、检索、命名、共享和保护。为用户提供描述文件的程序接口。文件通常存储在磁盘等非易失存储介质中。
文件的使用:存取方法有两种,一种是顺序存取,一种是随机存取,早期操作系统是顺序存取,现代操作系统都提供随机存取。文件的访问包括:打开操作(open)、关闭操作(close)、读操作(read)、写操作(write)、添加操作(append,实际用的时候还是用写wrtie,a+)、定位操作(seek)。
文件控制块:是文件系统的重要的数据结构,是文件存在的唯一标识,存放文件的三大部分信息:文件的标识信息(文件名、所有者名、文件类型、修改时间)、文件的位置信息(文件的长度、文件存放位置)、文件的访问权限信息(口令、保存时限、保护类别等)。
文件目录:文件按控制块的有序集合,将所有文件控制块按照规律组织起来便于检索,形成文件目录,也由文件组成。

2. 文件结构

多级索引文件结构:相当于将物理盘不断去细分成三层,二级索引存放在一级索引,一级索引存放在物理盘块。
树形目录结构:文件安全等级从高到低:系统安全、用户安全、目录安全、文件安全。
相对路径:从当前路径开始的路径。
绝对路径:从根目录开始的路径。
空闲存储空间的管理链表法(通过指针将所以空闲物理块链接起来,只需要记住链表的首结点)、索引法(对链表法的一种修改,同样构造一个空闲链表,但链表中的物理块并不参与分配,而是去记录其他空闲物理块的编号)、位示图法(重要,对于每个物理空间用一位标识,为1则使用,为0则空闲,形成一张位示图)。

8、设备管理(一般只考选择题)

1. 输入输出技术

设备管理原理:设备管理是操作系统的重要组成部分之一,除了CPU和内存之外,其他的都称为外部设备(包括常见的输入输出设备、存储设备、终端设备等),设备管理是对计算机输入输出系统的管理,主要任务有:选择和分配输入输出设备以及进行数据传输控制输入输出设备和CPU及内存之间的交换数据为用户提供友好的透明接口、提供设备与设备之间CPU与设备之间,以及进程与进程之间的并行操作。
常见的外设数据传输方式程序控制方式(CPU主动去查询外设是否完成数据传输,效率最低)、程序中断方式(外设完成数据传输,向CPU发送中断等待CPU处理,效率较高)、DMA方式(CPU只完成初始化操作,整个数据传输过程由DMA控制器完成,DMA传输速度快,缺点是硬件电路较为复杂)。

2. 虚设备和SPOOLING

虚设备:设备管理主要由分配设备、回收设备、输入技术、输出技术等,为了提高设备利用率以及独立设备共享化,虚设备技术是用一类设备去模拟另一类设备的技术,被模拟的设备被称为虚设备。
SPOOLING:外部设备同时练级操作,又称为假脱机输入/输出操作,是操作系统中采用的一项将独占设备改造成共享设备的技术。引入SPOOLING技术,可以使外设上建立两个数据缓冲区,这样无论多少进程,都可以共用一个外设,只要将命令发出,数据就会排队进入缓冲区,外设自动按照顺序区实现操作,实现物理外设的共享。
计算机软考:[统嵌入式系设计师:笔记整理(二)]
嵌入式软件学习路线(入门)
C语言进阶:C陷阱与缺陷(读书笔记总)
前两节资料下载可打印

你可能感兴趣的:(嵌入式系统软考考试,嵌入式硬件,c语言)