操作系统复习-虚拟存储器
虚拟存储器 虚拟存储器概述 虚拟存储器的定义和特征 定义 具有请求调入功能,能从逻辑上对内存容量加以扩充的一种存储器系统。 特征 多次性:作业允许被分成多次调入内存 对换性 虚拟性 虚拟存储器的实现方法 请求分页方法 硬件支持:页表机制,缺页中断机制,地址变换机制 软件支持 请求分段系统 请求分页式存储管理方式 请求分页中的硬件支持 请求页表机制 …
操作系统复习-存储器管理
存储器管理 存储器的层次结构 程序的装入与链接 程序装入内存的步骤 编译 链接 装入 地址绑定和内存保护 逻辑地址和物理地址 逻辑地址:CPU生成的地址 物理地址:内存中真实的地址 内存保护 防止用户访问OS的内存区域,保护用户进程不会相互影响。内存保护硬件有: 基地址寄存器:保存最小合法的地址 界限寄存器:保存合法的范围大小 程序的装入 绝对装入…
操作系统复习-进程同步
进程同步 进程同步的基本概念 进程同步概念的引入 异步环境下的一组并发进程因直接制约而相互发送消息、相互合作、相互等待,使得各进程按一定的速度执行的过程。 两种形式的制约关系 间接相互制约关系(互斥关系):临界资源中 直接相互制约关系(同步关系) 临界资源 使用的时候需要采用互斥的方式访问的资源。 临界区问题 人们把在每个进程中访问临界资源的那段代…
操作系统复习-处理机调度与死锁
处理机调度与死锁 处理机调度概述 多道程序系统之中,调度的实质是一种资源的分配。分时系统中无作业调度,分道批系统中才有。 处理机调度的层次 高级调度(长程调度/作业调度):调度的对象是作业,根据某种算法将外存上处于后备队列中的哪几个作业调入内存。 低级调度(短程调度/进程调度):决定就绪队列中的哪个进程应该获得处理机 中级调度(内存调度):把暂时不…
操作系统复习-进程的描述和控制
进程的描述和控制 前趋图和程序执行 前趋图 一个有向无环图(DAG),一个节点表示一段进程或者程序或一个语句。已知以下前趋关系: 可以得到以下的前趋图 注意:前趋图是无循环的!! 程序的顺序执行 若干的程序段按顺序依次执行。 特征:顺序性;封闭性:资源只可以被一个程序独占;可再现性:只要执行的环境相同就可以得到相同的执行结果。 程序的并发执行 不存…
操作系统复习-操作系统引论
操作系统引论 操作系统的目的和作用 目的 方便性:可以通过高级语言编写程序,或者使用OS封装的接口 有效性:提高计算机系统资源的利用率和系统的吞吐量 可扩充性:方便计算机硬件不断发展 开放性:遵守对应的国际标准,比如OSI 作用 作为用户与计算机硬件之间的接口 作为系统资源的管理者:处理机,存储器,IO设备,信息 实现对计算机资源的抽象 推动计算机…
记一次解决Android Studio中依赖项存在但编译报错问题的过程
今天在编写安卓项目的时候,编译运行MainActivity的过程中,gradle给出了一些编译错误信息。其中显示本项目的自定义Theme依赖缺失。 这就非常奇怪了,我看了一眼代码目录下面的ui.theme包,明明Theme.kt里面已经定义了需要的主题啊。而且ctrl+左键也是可以跳转到对应依赖项的。而且这个问题有个很怪的现象,新建的MainAct…
Kotlin中的列表(List和MutableList)
一、Kotlin中两种列表的区别 在Kotlin语言中,有两种列表可供使用。 List:不可变的列表,创建之后就不再可修改 MutableList:可变列表,实现了add()等操作和运算符,可以对内容进行修改 这两种列表都有自己不同的特性,以下进行介绍。 二、Kotlin列表的使用 2.1 List不可变列表 2.1.1 构造及初始化 创建一个Li…
初识SpringBoot
SpringBoot可是说是目前最流行的Web后端框架之一了,为了面向日后的实习,只能从现在开始学习相关的专业知识。为此我也在博客之中开设了一个板块,来记录自己学习SpringBoot路程中的相关笔记。希望可以坚持学完着一个框架,话不多说,加油吧。 SpringBoot初步 SpringBoot是基于Java的一个框架,通常采用maven这一个构建…
一种解决Fedora下中文字体显示为方块的方法
问题 前不久给自己的电脑安装上了Fedora39,但是在使用的时候经常能遇到程序内中文字体无法正常显示这一问题。刚开始以为是常用的字体缺失所致,后来安装了常见的中文字体发现问题并为解决。于是便在互联网中寻找解决方案。 最后在RedHat的论坛中找到了这一篇问答:Chinese text in Java GUI apps is displayed a…