- 2024-10-17【哈工大_操作系统实验】Lab5 基于内核栈切换的进程切换
本节将更新哈工大《操作系统》课程第五个Lab实验基于内核栈切换的进程切换。按照实验书要求,介绍了非常详细的实验操作流程,并提供了超级无敌详细的代码注释。Linux0.11采用TSS和一条指令完成任务切换,虽然简单但执行时间长。堆栈实现任务切换更快,且可以使用指令流水
- 2024-10-09【读书笔记-《30天自制操作系统》-26】Day27
本篇内容不多,主要是一些优化的工作。首先优化了应用程序,然后引入对应用程序的保护功能,最后引入库的概念。1.应用程序优化首先来解决上一篇中遗留的一个bug:使用ncst命令运行的应用程序,按下Shift+F1或者点击x按钮都无法关闭。分析上一篇新增的代码,没有发现问题,因此这个
- 2024-10-01操作系统:保护模式(五)特权
特权机制特权特权级数值越大,级别越小。通常,因为操作系统是为所有程序服务的,可靠性最高,而且必须对软硬件有完全的控制权,所以它的主体部分必须拥有特权级0,并处于整个环形结构的中心。也正是因为这样,操作系统的主体部分通常又被称做内核(Kernel、Core)。特权级1和2通常赋予那
- 2024-09-03【读书笔记-《30天自制操作系统》-14】Day15
本篇内容开始讲解多任务。本篇内容结构很简单,先讲解任务切换的原理,再讲解任务切换的代码实践。但是涉及到的知识不少,理解上也有些难度。1.任务切换与多任务原理1.1多任务与任务切换所谓多任务,指的是操作系统同时运行多个任务。但是这种说法实际上是不准确的。如果只有
- 2024-09-01一个操作系统的设计与实现——第26章 多处理器(下):应用处理器引导
26.1应用处理器当计算机启动时,不管其中有多少个CPU,都只有一个CPU会真正启动,这个CPU就称为引导处理器(BootstrapProcessor,BSP);而其他CPU会等待被BSP唤醒,这些CPU就称为应用处理器(ApplicationProcessor,AP)。BSP可以在任意时刻向所有AP广播唤醒信号,当AP接受到信号后,就会启动BIOS,随
- 2024-09-01一个操作系统的设计与实现——第22章 64位任务
22.164位TSS与TSS描述符想要实现任务,就需要先安装好TSS与TSS描述符。64位TSS如下图所示:如图所示,64位TSS的大小不变,还是104字节。64位CPU淘汰了硬件任务切换和数据段寄存器,因此,64位TSS的组成与32位TSS完全不同,其已不具备保存寄存器的功能,其中的大部分字节用于中断栈表(Interrup
- 2024-08-28chapter15------任务切换
任务切换的基本方式(简介)协同式从一个任务切换到另一个任务时,需要当前任务主动地请求暂时放弃执行权,或者在通过调用门请求操作系统服务时,由操作系统将控制转移到另一个任务任务的切换取决于每个任务的“自律性”抢占式可以安装一个定时器中断,并在中断服务程序中实施任务
- 2024-08-22海光 FTPM 运行报错:Fapi_Provision_Finish() ErrorCode (0x00060025) No EK certificate found.
使用的是海光CPU提供的基于固件的FTPM,错误原因是海光没有给TPM提供相应的EK证书。从而导致Fapi_Provision()接口无法通过证书的校验。关于Fapi_Provision()接口的功能,官网提到是:RetrievetheEKtemplate,nonceandcertificate,verifythattheymatchtheTPM’sEK
- 2024-07-30chapter3------保护模式之特权级转移
特权级特权级总共有4个级别,数字越小表示的特权级越大CPL-CurrentPrivilegeLevel(当前特权级):用于指示处理器当前运行的特权级别DPL-DescriptorPrivilegeLevel(描述符特权级):用于指示段描述符或门描述符的特权级别。每个段描述符或门描述符都有一个DPL字段,它决定了访问该
- 2024-04-04CPU 是怎样进行任务切换的?
通过“中断+任务门”进行任务切换好处好处抢占式任务调度,所有任务都有运行的机会例子在8258A中,把时钟的中断向量号设置为0x20,因此在中断描述符表IDT的第0x20个中断描述符中注册了时钟的中断处理程序随着时钟中断的定期发生,满足一定条件后,该中断处理程序又调用schedule
- 2024-03-10任务状态段:TSS
1、任务状态段 可以将任务状态段理解为一块内存,站在CPU设计的角度可以理解成每一个任务都拥有一个TSS结构,它占用104个字节。 Intel白皮书给出的图: 可以将该图理解为一个结构,它在内存中也是连续存储的。typedefstructTSS{DWORDlink;//保存前一个TSS
- 2023-11-12一个操作系统的设计与实现——第12章 任务(三):3特权级任务
特权级是保护模式的核心概念之一,但我们的操作系统一直没有引入这个概念。这是因为,特权级只有在3特权级任务存在时才有意义。本章将要实现的是3特权级任务的加载与任务切换。12.1特权级12.1.1特权级的功能特权级(PrivilegeLevel),是保护模式中用于限制任务权限的机制。特权级有4
- 2023-09-25Linux-----fork.c进行拆解分析
fork()函数说明fork()是一个用于创建新进程的系统调用,fork可以在父进程中创建一个子进程。子进程是父进程的副本,frok从父进程继承了大部分资源和状态。先简单理解一下fork()函数#include<stdio.h>#include<stdlib.h>#include<unistd.h>intmain(){pid_tpid;//
- 2023-06-14java开发系统内核:自动化进程切换
我们已经通过时钟中断完成了两个进程间的相互切换。但当前实现有很大的缺陷,例如我们只能在两个指定的进程间切换,如果要想增添新的进程,那么,没增加一个进程,按照当前模式,我们只能再增加相应代码,这显然是不可接受的。因此,这节,我们希望完成进程的切换机制,使得有新进程时,我们无需改动代码
- 2023-06-07TSS固体放电管的属性大致有哪些?
之前在写关于GDT放电管与TSS放电管之间的差异时,其实有谈到TSS(固体放电管)它拥有的一些特性,今天优恩小编还是想重复一下,希望更多小伙伴能够记住。TSS,有人叫它固体放电管、也有人叫它半导体放电管,它主要的应用场景就是在一些通讯接口、安防系列、工业、网络系统中,用作于通讯信号端口的
- 2023-06-05优恩教你TSS半导体放电管选型的几大注意事项
固体放电管,是以半导体工艺制作而成的,因此我们也称为半导体(TSS)放电管,它常在电路中并联使用,具备伏安特性。TSS放电管在电路中类似开关,在正常工作时不动作,但一般被保护电路受到雷击浪涌、脉冲过电压等异常情况时,它会迅速将异常电压、电流释放掉,当电路恢复正常工作状态时,它也会恢复至截
- 2023-02-23 33-DRF框架-反序列化使用
#增加修改#把参数转成model对象,操作数据库#步骤:#1.创建序列化对象data传递参数进行验证#2.is_validate()函数验证#3.通过可以使用validated
- 2023-01-24tss
代码随想录|Day6-2|LC01两数之和、242.有效的字母异位词1.两数之和解法1,利用HashMap(map.get(Key))实现数的存储和输出classSolution{publicint[]two
- 2023-01-04常用EMC元器件简介——防护器件
在电子产品中,需要防护的电路主要是电源和信号,所处的位置不同其防护等级和防护方案也不同,介绍三种最常用的防护器件:TVS管,气体放电管、半导体放电管。一、瞬态抑制二极管(TVS)1
- 2022-12-17操作系统-哈工大-李治军老师-【实验项目4-基于内核栈切换的进程切换】
课程的实验地址:实验楼:https://www.lanqiao.cn/courses/115(一)实验相关的要求1.实验目的2.实验内容3.实验报告4.评分标准5.实验提示(二)前置知识点1.基
- 2022-11-16内核栈、用户态栈
1、背景当线程从用户态进入内核态的时候,内核会将栈从用户态栈切换成内核栈,每个线程都有自己的内核栈;在x86架构下,内核栈保存在tss里;tss里包括sp0、sp1、sp2三个指针;内核当
- 2022-11-01R方计算步骤
R方可以用于评估回归模型对现实数据拟合的程度。图片来源:哈尔滨工业大学,深度学习基础,刘远超importnumpyasnpdefR_2(y,y_hat):'''计算R方:param
- 2022-09-05中断调用之猜想
在launcher.asm中,使用了launch_applications过程三次调用了int0x40去启动3个应用,构成了桌面背景,桌面图标和底部任务栏。这三次调用使用了eax,放置调用号19。ebx放置了应用
- 2022-08-31在linux上搭建并测试tpm simulator
最近有一个搭建vTPM环境的需求,在网上搜寻了很多相关的资料,但网上的资料所提供步骤比较繁琐。经过多次试验,我成功地在archlinux上运行了tpm2simulator,遂将步骤记录下来,方
- 2022-08-19TSS结构赋值
在进程切换过程中,需要一个结构体,在保护模式中,称为TSS.。在MenuetOS32系统中,加载应用,也就是进程时,用了如下的方式:;TSSmoveax,cr3