![](https://i-blog.csdnimg.cn/columns/default/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
计算机操作系统
文章平均质量分 87
计算机操作系统基础知识
Pinuoca0
这个作者很懒,什么都没留下…
展开
-
页面置换算法(FIFO和LRU)
之后就是页面置换算法,lru函数接受两个参数,一个是数组,一个是该数组中元素个数,先用函数创建一个栈,然后遍历整个数组,用currentpage来存储当前遍历到的页面,如果栈空,就直接将页面调入内存,如果栈非空,但是页面不在内存中,也是将页面调入内存,如果栈非空,但是页面在内存中,就要将页面调到栈顶。当页面在内存中时,还需要将这个页面调到栈顶,要先知道这个页面在数组中的位置,所以还要一个查找函数,查找函数和判断是否在内存中一样,唯一不同的是,如果遍历时找到页面了,查找函数要返回该页面在内存中的位置。原创 2024-01-31 11:54:31 · 3239 阅读 · 0 评论 -
有界缓冲区问题(生产者消费者)
设计思路:对于生产者消费者问题,首先需要一个生产者脚本producer.sh和消费者脚本consumer.sh,生产者生产共享资源到文件buffer.txt中,消费者从buffer.txt中读取并消费资源,通过信号量来同步两个进程,确保他们不会同时访问buffer.txt,而对于信号量的操作还需要wait.sh和signal.sh脚本,除此之外还需要一个初始化脚本init.sh来进行初始化信号量,初始化缓冲区文件,运行生产者和消费者脚本等操作。之后是消费者,先进入缓冲区,然后消费资源。原创 2024-01-31 11:26:05 · 904 阅读 · 0 评论 -
操作系统4种进程调度算法(c语言)
抢占性的 HPF 允许正在执行的进程被更高优先级的进程中断,以便立即执行更高优先级的任务。需要注意的是,SJF 算法的一个问题是它对于长服务时间的进程可能会导致其他进程长时间等待,可能会出现饥饿(Starvation)的情况。这是一种非抢占式的调度算法,即一旦进程开始执行,就一直执行到完成,除非有更短的作业进入就绪队列。在这种算法中,进程按照它们到达就绪队列的顺序依次执行,即先到达的进程先执行,后到达的进程排队等待。如果新进程的服务时间比当前正在执行的进程更短,那么系统会中断当前进程,转而执行新的进程。原创 2023-11-14 00:16:14 · 5150 阅读 · 0 评论 -
【计算机操作系统】新兴操作系统
共识算法用于保证区块链网络中节点之间的数据一致性和安全性,智能合约则是基于区块链技术实现的程序,可以自动执行合约中定义的逻辑,实现自动化、去中心化的业务流程。7. 开放性和可扩展性:云计算操作系统应该具有开放性和可扩展性,支持多种编程语言和应用框架,同时提供开放的API和接口,方便用户进行二次开发和定制化。区块链操作系统是指针对区块链技术进行设计和优化的操作系统。2. 高安全性:由于区块链技术本身的特点,区块链操作系统在数据存储、传输、处理等方面具有高度的安全性,能够有效防止数据篡改和攻击。原创 2023-05-02 16:58:26 · 727 阅读 · 0 评论 -
【计算机操作系统】实时操作系统
1. 实时内核:实时内核是实时系统的核心组成部分,它具有实时调度器、实时任务管理器、实时中断处理器等功能,能够确保任务在预定的时间内得到执行。实时任务通常分为硬实时任务和软实时任务两种类型,硬实时任务要求任务必须在预定的时间内完成,而软实时任务只需要尽量满足时间限制。它通常分为硬实时系统和软实时系统,其中硬实时系统要求任务的响应时间必须严格满足预定的时间限制,而软实时系统只需要尽量满足时间限制。实时调度算法必须满足实时系统的基本要求,例如任务的可预测性和响应时间的最小化等。原创 2023-05-02 16:56:19 · 2797 阅读 · 0 评论 -
【计算机操作系统】网络和分布式系统
基于分布式架构的分布式系统中,各个节点之间是对等的,没有中心节点,例如对等网络和分布式数据库系统。在分布式系统中,RPC和消息传递通常结合使用,以满足不同的通信需求。网络协议是一种规定了计算机和网络设备之间通信规则和格式的约定,而网络体系结构是一种将各种协议和技术组合在一起的体系结构。1. 通信问题:分布式系统中各个节点之间的通信需要使用网络,而网络的不可靠性和延迟会对系统的性能和可靠性产生影响。4. 透明性:分布式系统中的各个组件或节点对用户来说应该是透明的,用户不需要知道系统的分布情况和内部工作机制。原创 2023-05-02 16:54:21 · 659 阅读 · 0 评论 -
【计算机操作系统】安全和保护
在进程隔离中,每个应用程序或服务都运行在自己的进程空间中,不同的进程之间不能直接共享数据,只能通过一定的机制进行通信,这样就可以避免因为一个程序的崩溃或者恶意代码的攻击导致整个系统瘫痪或数据丢失的问题。沙箱技术是一种将应用程序或服务运行在隔离的环境中,从而限制它们对系统的访问能力的技术。为了避免这些安全漏洞和攻击技术,需要在计算机系统的设计、开发、部署和维护过程中采取一系列的安全措施,如合理设计系统架构、加强输入验证和数据过滤、使用安全加密技术、限制用户权限、定期进行系统更新和漏洞修复等。原创 2023-05-02 16:50:48 · 1140 阅读 · 0 评论 -
【计算机操作系统】输入输出系统
DMA的工作原理是,当设备需要进行数据传输时,它会发出DMA请求,然后DMA控制器会从CPU中夺取总线控制权,直接访问主存储器进行数据传输,完成后再释放总线控制权,让CPU继续执行其他任务。缓存可以存在于不同的层次结构中,例如CPU的内部缓存(如L1,L2,L3缓存),磁盘控制器上的缓存,甚至可以是网络路由器中的缓存。2. 设备中断处理:设备中断是指硬件设备向操作系统发送中断信号的过程。缓冲区是一种用于处理输入输出数据的技术,它是一段内存空间,用于暂存输入输出数据,以平衡输入输出设备的速度和CPU的速度。原创 2023-05-01 19:30:43 · 443 阅读 · 0 评论 -
【计算机操作系统】文件系统
当用户请求访问一个文件时,文件系统首先会在文件目录中查找该文件的位置信息,然后读取文件的数据块,将它们加载到内存中,以便用户可以访问文件的内容。读写锁是一种用于实现多线程或多进程并发访问的同步机制,它可以将一个资源(如文件)分为读写两个部分,对于多个进程或线程的读取操作可以同时进行,但对于写操作则需要互斥,以避免数据的不一致性。3. 文件系统的文件管理:文件管理是文件系统的核心部分,主要包括文件的创建、删除、读写、复制、移动、重命名等操作。在文件系统中,还有一些特殊类型的文件,如目录文件和设备文件。原创 2023-05-01 19:29:11 · 555 阅读 · 0 评论 -
【计算机操作系统】存储管理
页面置换算法就是用于选择被替换的页面的算法。在计算机系统中,由于存在多个进程或应用程序同时运行,每个进程或应用程序都需要独立的内存空间,而操作系统需要对每个进程或应用程序的内存访问进行控制和保护,防止非法进程或应用程序访问其他进程或应用程序的内存,从而保障系统的安全性和稳定性。4. 时钟算法(Clock):将所有页面组织成一个环形链表,每个页面带有一个访问位(表示是否被访问过),指针指向最近访问的页面,当需要替换页面时,从指针指向的页面开始,找到第一个访问位为0的页面进行替换,同时将指针指向下一个页面。原创 2023-05-01 19:26:37 · 288 阅读 · 0 评论 -
【计算机操作系统】操作系统概述
操作系统是计算机系统中的一个重要组成部分,是控制和管理计算机硬件和软件资源的系统软件。操作系统的作用是为用户提供一个友好、高效、安全和可靠的工作环境,使用户能够方便地使用计算机。操作系统通过管理计算机的资源,提供了一系列重要的功能,包括进程管理、内存管理、文件系统管理、输入输出管理、网络管理等。它还提供了一些系统服务,如安全保护、调试工具、性能监控等。在多用户、多任务、多处理器的计算机环境中,操作系统起着更为重要的作用。原创 2023-05-01 19:21:18 · 191 阅读 · 0 评论 -
【计算机操作系统】进程管理
进程(Process)是计算机中正在运行的程序的实例,它包括程序计数器、堆栈和数据段等信息。线程(Thread)是进程的执行单元,一个进程中可以包含多个线程,每个线程可以独立执行不同的任务,但它们共享同一个进程的内存和其他资源。进程和线程的区别在于:1.资源占用:一个进程可以包含多个线程,但进程是一个独立的实体,需要占用操作系统的资源,包括内存、CPU时间片等;线程是进程的执行单元,它们共享进程的内存和其他资源,因此线程的资源占用相对较少。原创 2023-05-01 19:23:40 · 249 阅读 · 0 评论