随笔分类 -  操作系统

操作系统学习
ucore操作系统学习(七) ucore lab7同步互斥
摘要:1. ucore lab7介绍 ucore在前面的实验中实现了进程/线程机制,并在lab6中实现了抢占式的线程调度机制。基于中断的抢占式线程调度机制使得线程在执行的过程中随时可能被操作系统打断,被阻塞挂起而令其它的线程获得CPU。多个线程并发的执行,大大提升了非cpu密集型应用程序的cpu吞吐量,使 阅读全文
posted @ 2020-12-24 23:58 小熊餐馆 阅读(1119) 评论(0) 推荐(0) 编辑
ucore操作系统学习(六) ucore lab6线程调度器
摘要:1. ucore lab6介绍 ucore在lab5中实现了较为完整的进程/线程机制,能够创建和管理位于内核态或用户态的多个线程,让不同的线程通过上下文切换并发的执行,最大化利用CPU硬件资源。ucore在lab5中使用FIFO的形式进行线程调度,不同的线程按照先来先服务的策略,直到之前创建的线程完 阅读全文
posted @ 2020-12-09 22:04 小熊餐馆 阅读(1050) 评论(0) 推荐(0) 编辑
ucore操作系统学习(五) ucore lab5用户进程管理
摘要:1. ucore lab5介绍 ucore在lab4中实现了进程/线程机制,能够创建并进行内核线程的调度。通过上下文的切换令线程分时的获得CPU,使得不同线程能够并发的运行。 在lab5中需要更进一步,实现我们平常开发接触到的、运行在用户态的进程/线程机制。用户线程通常用于承载和运行应用程序,为了保 阅读全文
posted @ 2020-11-27 11:17 小熊餐馆 阅读(2120) 评论(0) 推荐(3) 编辑
ucore操作系统学习(四) ucore lab4内核线程管理
摘要:1. ucore lab4介绍 什么是进程? 现代操作系统为了满足人们对于多道编程的需求,希望在计算机系统上能并发的同时运行多个程序,且彼此间互相不干扰。当一个程序受制于等待I/O完成等事件时,可以让出CPU给其它程序使用,令宝贵的CPU资源得到更充分的利用。 操作系统作为大总管需要协调管理各个程序 阅读全文
posted @ 2020-11-01 15:15 小熊餐馆 阅读(2121) 评论(0) 推荐(2) 编辑
ucore操作系统学习(三) ucore lab3虚拟内存管理分析
摘要:1. ucore lab3介绍 虚拟内存介绍 在目前的硬件体系结构中,程序要想在计算机中运行,必须先加载至物理主存中。在支持多道程序运行的系统上,我们想要让包括操作系统内核在内的各种程序能并发的执行,而物理主存的总量通常是极为有限的,这限制了并发程序的发展。受制于成本问题,拥有足够大容量主存的个人计 阅读全文
posted @ 2020-10-22 22:19 小熊餐馆 阅读(2278) 评论(1) 推荐(1) 编辑
ucore操作系统学习(二) ucore lab2物理内存管理分析
摘要:一、lab2物理内存管理介绍 操作系统的一个主要职责是管理硬件资源,并向应用程序提供具有良好抽象的接口来使用这些资源。 而内存作为重要的计算机硬件资源,也必然需要被操作系统统一的管理。最初没有操作系统的情况下,不同的程序通常直接编写物理地址相关的指令。在多道并发程序的运行环境下,这会造成不同程序间由 阅读全文
posted @ 2020-10-15 22:47 小熊餐馆 阅读(4119) 评论(2) 推荐(3) 编辑
ucore操作系统学习(一) ucore lab1系统启动流程分析
摘要:一、ucore操作系统介绍 操作系统作为一个基础系统软件,对下控制硬件(cpu、内存、磁盘网卡等外设),屏蔽了底层复杂多样的硬件差异;对上则提供封装良好的应用程序接口,简化应用程序开发者的使用难度。站在应用程序开发人员的角度来看,日常开发中常见的各种关于并发、I/O、程序通信的问题等都和操作系统相关 阅读全文
posted @ 2020-09-28 22:37 小熊餐馆 阅读(6384) 评论(1) 推荐(4) 编辑