随笔分类 -  操作系统

学习了解操作系统相关知识
摘要:intel x86体系结构中断向量表中包含256个中断向量,编号为0-255。这256个中断可分为两大类:异常、中断。 异常 异常是CPU内部的中断,异常分为故障(fault)、陷阱(trap)、夭折(abort),它们的共同特点是不使用中断控制器、也不能被屏蔽。 中断 通常是由外部设备产生的,分为 阅读全文
posted @ 2021-08-21 22:32 hunterDing 阅读(1136) 评论(1) 推荐(0)
摘要:x86构架有两种内存保护和提供虚拟内存的方法——分段和分页。 通过分段,每一次访问一个内存地址,都会将地址值加上段的基地址,并检查段的长度。通过分页,地址空间被分成4KB的块,称为页。每个页面都可以映射到称之为页帧的物理内存,这样就可以建立虚拟内存空间。事实上,分段这种方式将逐渐退出历史舞台。然而, 阅读全文
posted @ 2021-08-16 10:50 hunterDing 阅读(330) 评论(0) 推荐(0)
摘要:基于linux os搭建bochs运行环境 1、安装bochs 直接输入命令: $ sudo apt-get install bochs $ sudo apt-get install bochs-x 2、创建bochs配置文件: 1 #configuration file for Bochs 2 3 阅读全文
posted @ 2021-08-11 18:06 hunterDing 阅读(276) 评论(0) 推荐(0)
摘要:P操作和V操作是不可中断的程序段,称为原语,PV原语及信号量的概念都是由荷兰科学家E.W.Dijkstra提出的。 信号量sem是一个整数,Sem大于等于零时代表可供并发进程使用的资源实体数,sem小于零时则表示正在等待申请资源的进程数。 P原语操作 (1) sem减 1 ; (2) 若sem大于等 阅读全文
posted @ 2021-05-08 09:38 hunterDing 阅读(996) 评论(1) 推荐(0)
摘要:串行外设接口(Serial Peripheral Interface,SPI)是微控制器和外围IC(如传感器、ADC、DAC、移位寄存器、SRAM等)之间使用最广泛的接口之一。 SPI是一种同步、全双工、主从式接口。来自主机或从机的数据在时钟上升沿或下降沿同步。主机和从机可以同时传输数据。SPI接口 阅读全文
posted @ 2020-05-15 18:24 hunterDing 阅读(1911) 评论(1) 推荐(0)
摘要:条件变量是线程可用的另一种同步机制。条件变量和互斥量一起使用时,允许线程以无竞争方式等待特定的条件发生。 条件本身是由互斥量保护的,线程在改变条件状态前必须先锁定互斥量。 注意: 条件变量Condition 主要描述的是 线程间的同步,即协作关系。 Linux中条件变量通常涉及以下几个函数: 抄一个 阅读全文
posted @ 2019-08-06 17:33 hunterDing 阅读(477) 评论(0) 推荐(0)
摘要:互斥量(mutex)从本质上来说是一把锁,在访问共享资源前对互斥量进行加锁,在访问完后释放互斥量上的锁。 对互斥量进行加锁以后,任何其他试图再次对互斥量加锁的线程都将会被阻塞直到当前线程释放该互斥锁。如果释放互斥锁时有多个线程阻塞,所有在该互斥锁上的阻塞线程都会变成可运行状态。第一个变成运行状态的线 阅读全文
posted @ 2019-08-06 17:04 hunterDing 阅读(664) 评论(0) 推荐(0)
摘要:现代操作系统有多种文件系统类型(如FAT32、NTFS、 ext2、ext3、ext4等),因此文件系统的层次结构也不尽相同。下图是一种合理的层次结构。 图 文件系统层次结构 1) 用户调用接口 文件系统为用户提供与文件及目录有关的调用,如新建、打开、读写、关闭、删除文件,建立、删除目录等。此层由若 阅读全文
posted @ 2017-04-28 15:20 hunterDing 阅读(1500) 评论(0) 推荐(0)
摘要:与文件管理系统和文件集合相关联的是文件目录,它包含有关文件的信息,包括属性、 位置和所有权等,这些信息主要是由操作系统进行管理。为实现目录管理,操作系统中引入了文件控制块的数据结构。 1) 文件控制块。 文件控制块(FCB)是用来存放控制文件需要的各种信息的数据结构,以实现“按名存取”。FCB的有序 阅读全文
posted @ 2017-04-28 15:17 hunterDing 阅读(5008) 评论(0) 推荐(0)
摘要:文件的物理结构是从实现观点出发,又称为文件的存储结构,是指文件在外存上的存储组织形式。文件的逻辑结构是从用户观点出发看到的文件的组织形式。文件的逻辑结构与存储介质特性无关,但文件的物理结构与存储介质的特性有很大关系。 按逻辑结构,文件有无结构文件和有结构文件两种类型:无结构文件和有结构文件。 无结构 阅读全文
posted @ 2017-04-28 11:19 hunterDing 阅读(3151) 评论(0) 推荐(0)
摘要:文件的属性 文件有一定的属性,这根据系统的不同而有所不同,但是通常都包括如下属性:①名称:文件名称唯一,以容易读取的形式保存。②标识符:标识文件系统内文件的唯一标签,通常为数字,它是对人不可读的一种内部名称。③类型:被支持不同类型的文件系统所使用。④位置:指向设备和设备上文件的指针。⑤大小:文件当前 阅读全文
posted @ 2017-04-28 11:11 hunterDing 阅读(2079) 评论(0) 推荐(0)
摘要:驻留集大小 对于分页式的虚拟内存,在准备执行时,不需要也不可能把一个进程的所有页都读取到主存,因此,操作系统必须决定读取多少页。也就是说,给特定的进程分配多大的主存空间,这需要考虑以下几点: 基于这些因素,现代操作系统通常釆用三种策略: 调入页面的时机 为确定系统将进程运行时所缺的页面调入内存的时机 阅读全文
posted @ 2017-04-18 10:51 hunterDing 阅读(1978) 评论(0) 推荐(2)
摘要:请求分页系统建立在基本分页系统基础之上,为了支持虚拟存储器功能而增加了请求调页功能和页面置换功能。请求分页是目前最常用的一种实现虚拟存储器的方法。在请求分页系统中,只要求将当前需要的一部分页面装入内存,便可以启动作业运行。在作业执行过程中,当所要访问的页面不在内存时,再通过调页功能将其调入,同时还可 阅读全文
posted @ 2017-04-18 10:32 hunterDing 阅读(3098) 评论(0) 推荐(0)
摘要:非连续分配允许一个程序分散地装入到不相邻的内存分区中,根据分区的大小是否固定分为分页存储管理方式和分段存储管理方式。 基本分页存储管理方式 固定分区会产生内部碎片,动态分区会产生外部碎片,这两种技术对内存的利用率都比较低。我们希望内存的使用能尽量避免碎片的产生,这就引入了分页的思想:把主存空间划分为 阅读全文
posted @ 2017-04-17 20:21 hunterDing 阅读(1961) 评论(1) 推荐(0)
摘要:内存连续分配方式,是指为一个用户程序分配一个连续的内存空间。它主要包括单一连续分配、固定分区分配和动态分区分配。 单一连续分配 内存在此方式下分为系统区和用户区,系统区仅提供给操作系统使用,通常在低地址部分;用户区是为用户提供的、除系统区之外的内存空间。这种方式无需进行内存保护。这种方式的优点是简单 阅读全文
posted @ 2017-04-17 19:11 hunterDing 阅读(2634) 评论(0) 推荐(1)
摘要:内存管理(Memory Management)是操作系统设计中最重要和最复杂的内容之一。虽然计算机硬件一直在飞速发展,内存容量在不断增长,但是仍然不可能将所有用户进程和系统所需要的全部程序和数据放入内存中,所以操作系统必须将内存空间进行合理地划分和有效地动态分配。操作系统对内存的划分和动态分配,就是 阅读全文
posted @ 2017-04-17 10:30 hunterDing 阅读(656) 评论(0) 推荐(0)
摘要:为使系统不发生死锁,必须设法破坏产生死锁的四个必要条件之一,或者允许死锁产生, 但当死锁发生时能检测出死锁,并有能力实现恢复。 预防死锁 设置某些限制条件,破坏产生死锁的四个必要条件中的一个或几个,以防止发生死锁。 避免死锁 在资源的动态分配过程中,用某种方法防止系统进入不安全状态,从而避免死锁。 阅读全文
posted @ 2017-04-15 14:37 hunterDing 阅读(923) 评论(0) 推荐(0)
摘要:死锁的定义 在多道程序系统中,由于多个进程的并发执行,改善了系统资源的利用率并提高了系统 的处理能力。然而,多个进程的并发执行也带来了新的问题——死锁。所谓死锁是指多个进 程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。 死锁产生的原因 1) 系统资源的竞争 通常系 阅读全文
posted @ 2017-04-15 14:32 hunterDing 阅读(245) 评论(0) 推荐(0)
摘要:信号量机制可用来解决互斥与同步的问题,它只能被两个标准的原语wait(S)和signal(S)来访问,也可以记为“P操作”和“V操作”。原语是指完成某种功能且不被分割不被中断执行的操作序列,通常可由硬件来实现完成。原语之所以不能被中断执行,是因为原语对变量的操作过程如果被打断,可能会去运行另一个对同 阅读全文
posted @ 2017-04-15 14:21 hunterDing 阅读(549) 评论(0) 推荐(1)
摘要:软件实现方法 在进入区设置和检查一些标志来标明是否有进程在临界区中,如果已有进程在临界区,则在进入区通过循环检查进行等待,进程离开临界区后则在退出区修改标志。 1) 算法一:单标志法。 该算法设置一个公用整型变量turn,用于指示被允许进入临界区的进程编号,即若turn=0,则允许P0进程进入临界区 阅读全文
posted @ 2017-04-14 14:37 hunterDing 阅读(4678) 评论(0) 推荐(1)