408操作系统笔记

一操作系统概述

1.操作系统的概念

操作系统:是控制和管理整个计算机系统 的硬件和软件资源 ,合理地组织,调度计算机的工作和资源的分配,为用户和其他软件提供方便接口和环境的程序集合,是计算机系统中最基本的系统软件。
在这里插入图片描述

2:操作系统的目标和功能

(1)操作系统四大管理功能
进程管理:多道程序环境下,处理机的分配和运行都是以进程或线程为基本单位,对处理机的管理可以归结为对进程的管理。主要任务:进程控制,进程同步,死锁处理,处理机调度。
内存管理:主要是内存的分配和回收,地址映射,内存保护和共享和内存扩存
设备管理:主要任务是完成用户的I/O请求,提高设备的利用率,缓冲管理,设备处理(分配和回收)和虚拟设备等功能。
文件管理:主要包括文件存储空间的管理,目录管理以及文件读写管理和保护
(2)作为用户和硬件系统的接口
现在,主要通过GUI(图形用户界面)和操作系统交流,以前主要通过命令行(命令提示符)完成交互。这些都是操作系统提供的接口,操作系统提供的接口主要有两类,命令接口:用户利用这些操作命令组织和控制作业的执行,程序接口:编程人员可以使用它们来请求操作系统服务。
一:命令接口
1.联机命令接口(一条命令一条命令执行):
交互命令接口,适合分时或实时操作系统,用户通过控制台输入操作命令,向系统提出各种服务要求,每输入一条命令,控制权转给操作系统的命令解释程序,然后由命令解释程序解释并且执行输入的命令,完成功能后,之后的控制权转回控制台或者中断。
2.脱机命令接口(一批命令处理完后控制权才回到控制台):
批处理命令接口,适合批处理系统由一组作业控制命令完成,脱机用户不能直接干预作业的运行,事先相应的作业控制命令写出一份操作说明书,连同作业一起提交给操作系统。系统调度到该作业时,由系统中的命令解释程序逐条解释执行作业说明书上的命令。
二:程序接口
由一组系统调用组成,用户通过在程序中使用这些系统调用请求操作系统服务
例如:printf是向屏幕输出信息,需要操作系统完成,因为这是对硬件的控制,所以printf在底层会调用类似接口。
(3)需要实现对硬件机器的扩展
裸机:没有任何软件支持的计算机称为裸机,它构成了计算机系统的物质基础,
虚拟机或扩充机:操作系统覆盖在裸机上,提供资源管理和方便用户的各种服务功能,把裸机改造成为功能更强,使用更方便的机器。因此,把软件覆盖的机器称为虚拟机或扩充机

3:操作系统的四个特征

1.并发(区别并行和并发)
并发指的是两个或者多个事件在同一时间间隔内发生,这些事情在宏观上是同时发生的,在微观上是交替发生的。
操作系统的并发性:指的是操作系统在宏观上这些事件同时发生,微观上,这些事情是交替发生的。
单核CPU同一时刻只能执行一个程序,所以各个程序只能并发执行多核CPU,同一时刻可以同时执行多个程序,多个程序可以并行执行
2.共享
指的是系统中的资源可以供内存中多个并发执行的进程共同使用。分为互斥共享,同时共享。
a.互斥共享(在一个时间段内,只允许一个进程对它进行访问)
进程A访问某个资源时,若该资源空闲,则分配给进程A,若此后其他进程也要访问该资源时,若是A还没有用完该资源,则其余进程必须等待,这种资源称为临界资源,对于临界资源的访问各个进程之间是互斥的。
b.同时共享
同时共享:这里共享是宏观上的共享,其微观上也是交替对该资源进行访问

总结:并发和共享是操作系统两个最基本的特征,两者互为存在的前提,失去并发,共享失去存在的意义,失去共享,多个进程也无法进行
3.虚拟
是指把一个物理上的实体变为若干逻辑上的对应物。
应用:
虚拟处理机:利用多道程序设计技术把一个物理上的CPU虚拟为多个逻辑上的CPU,让每个终端用户都感觉有一个CPU在为它专门服务。
虚拟存储器:将一台机器的物理存储虚拟为虚拟存储器,以便从逻辑上扩充存储器的容量。
在这里插入图片描述
操作系统的虚拟技术:
时分复用:虚拟处理机的分时共享
空分复用:虚拟存储器
4.异步
在多道程序的环境下,允许多个程序并发执行,但是由于资源有限,程序的执行不能一气呵成,而是走走停停吗,程序以不可知的速度向前推进,这就是进程的异步性。

4:操作系统的发展历程

1.手工操作阶段
此阶段没有操作系统,所有工作需要人工干预,有两个显著缺点:用户独占全机,资源利用率很低,CPU等待手工操作,CPU利用很不充分
在这里插入图片描述

2.批处理阶段(操作系统开始出现)
一:单批道处理系统:引入了脱机输入输出技术,采用外围机+磁带完成,并且由监督程序负责控制作业的输入输出,这里的监督程序就是操作系统的雏形
单批道处理系统的 特征:
自动性:磁带上的一批作业可以自动逐个运行,无需人工干预
顺序性:各道作业的完成顺序和他们进入内存的顺序在正常情况下完全一致
单道性:监督程序每次从磁道只调入一道程序进入内存运行
优缺点:
优点:缓解了一定程度的人机矛盾,资源利用率有所提升
缺点:单道性,内存中只有一道程序运行,CPU有大量时间等待I/O完成,资源利用率仍让很低
在这里插入图片描述
二:多批道处理系统(操作系统正式诞生):多道程序设计技术允许多个程序同时进入内存并且允许他们在CPU中交替进行,这些程序共享系统中各种硬件软件资源。当一道程序因为I/O请求暂停运行,CPU便立刻转去运行另一道程序。
1.多道批处理系统特征:
多道:内存中同时存放多道独立的程序
宏观上并行:同时进入系统的多道程序都处于运行过程中,微观上串行:内存中的多道程序轮流占有CPU,交替执行
2.多道批处理系统的优缺点
优点:资源利用率高,多道程序共享计算机资源,从而使得资源得到充分利用,
缺点:用户响应时间长,未能提供人机交互能力,用户无法了解自己的程序运行情况,又不能控制计算机
注意点:多批道处理系统比较复杂,多个程序在内存中,这个时候需要内存管理,准备运行多个作业时,处理器必须决定先运行哪个作业,因此需要调度算法
在这里插入图片描述

3.分时操作系统
计算机以时间片为单位轮流为各个作业用户服务,每个用户可以通过终端和计算机进行交互分时系统也支持多道程序设计的系统,但是它不同于多批道处理系统。
分时系统和多批道处理系统区别:
多批道处理系统实现作业自动控制而无须人工干预的系统分时系统实现人机交互系统,这使得分时系统和批处理系统有着不同的特征。
1.分时系统的特点
同时性:允许多个终端用户同时使用一台计算机, 终端上这些用户可以同时或基本使用计算机
交互性:用户终端采用人机对话的方式直接控制程序运行,和程序进行交互
独立性:多个用户可以独立的进行操作,互不干扰,用户感觉不到别的用户的存在,好像自己在独占计算机
及时性:用户的请求在很短的时间内得到响应
2.分时操作系统的优缺点
优点:用户请求可以立即被响应,**解决了人机交互的问题,**用户对计算机的操作相互独立,感受不到别人的存在。
缺点:不区分任务的紧急性,不能优先处理一些紧急的任务,操作系统对各个用户都是完全公平的,循环的为每个用户服务一个时间片。

4.实时系统

为了解决分时系统无法优先处理紧急任务而诞生的,为了可以在某个时间限制内完成某些紧急任务而不需要时间片排队而诞生的
1.硬实时系统和软实时系统:硬实时系统:某个动作绝对地在规定的时间刻或规定的时间范围内发生,软 实时系统:能够接受偶尔的违法时间规定而且不会引起任何永久性的损害
2.实时操作系统的特点
实时操作系统的控制下,计算机系统接受到外部信号后及时处理,并且在严格的时间内处理完成,具有很强的及时性和可靠性。
3.实时系统的优缺点:
优点:能够响应紧急 任务,某些紧急任务不需要时间片排队

5.操作系统的运行环境

1.特权指令和非特权指令
特权指令:这类指令具有特殊权限,这类指令权限大,使用不当导致系统奔溃,所以为了保护系统的安全,这类指令只能用于操作系统或者其他软件,不能直接提供给用户使用-----特权指令只能在核心态执行
非特权指令:用户态下只能使用非特权指令,和核心态下可以使用全部指令,当用户态下使用特权指令,将产生中断以阻止用户使用特权指令。
2.用户态和核心态
注意:程序状态寄存器(PSW)中的某些标志位可以标识当前处理器处于什么状态。
用户态:CPU处于用户态只能执行非特权指令
核心态:CPU处于核心态可以执行所有指令
3.内核程序和应用程序
内核程序:操作系统的内核程序是系统的管理者,可以执行全部指令,运行在核心态
应用程序:为了保证系统的安全运行,普通程序只能执行非特权指令,运行在用户态
4.操作系统的内核
1.内核的概念操作系统中和硬件紧密关联的模块,这部分构成了操作系统的内核
在这里插入图片描述
2.大内核和微内核
大内核:把操作系统的主要功能模块都作为系统内核,运行在核心态
优点:性能高 缺点:内核代码庞大,结构混乱 ,难以维护
微内核:只把基本的功能保留在内核
优点:内核功能少,结构清晰,方便维护 缺点:需要频繁在用户态和内核态之间转化,性能低
3.库函数和系统调用
库函数是语言或者应用程序的一部分,可以运行在用户空间,系统调用是操作系统的一部分,是内核为用户提供的程序接口,运行在内核空间。
许多库函数会使用系统调用来实现自己的功能,没有使用系统调用的库函数执行效率要高于使用的 ,因为使用系统调用需要用户态向核心态的转化。
4.内核态和用户态的相互转化’
内核态到用户态:执行一条特权指令,修改PSW标志位标识当前状态为用户态,此时标志操作系统让出CPU的使用权
用户态到内核态:由中断触发硬件自动完成改变状态过程,此时操作系统强行夺回CPU使用权

总结:操作系统中有内核----》内核态----》执行全部指令

6.中断和异常

1.中断的作用
中断是让操作系统内核夺回CPU使用权的唯一途径,发生中断时,用户会立刻进入核心态通过硬件实现
2.中断的类型
一:内中断(也称为异常)
陷阱,陷入(trap) 故障(fault) 终止(abort)
内中断:中断信号来自于CPU内部,与当前执行的指令有关,对异常的处理一般依赖于当前的程序运行现场,而且异常无法被屏蔽,一旦出现异常,一定要立即处理。
1.试图在用户态执行特权指令
2.软件故障:执行除法时发现除数为0
3.硬件故障:缺页
4.系统调用:应用程序想要操作系统 内核为其提供服务,此时会执行一条特殊的指令—陷入指令(trap),该指令会引发一个内中断信号

二:外中断(中断)
时钟中断 I/O请求中断
中断:信号来自于CPU外部,也就是和当前执行的指令无关
1.时钟中断:时钟部件会每隔一个时间片给CPU发送一个时钟中断信号,防止某些程序长时间抢占CPU
2.I/O请求中断:输入输出处理完成后,相关设备发送一个中断信号,希望处理机可以向设备发出下一个输入输出请求,同时也让输入输出后的程序继续运行

3.中断的处理过程

在这里插入图片描述
1.关中断:为了保护中断现场期间不被新的中断请求大端的,必须关中断,从而保证被中断的程序在中断执行完成后能够接着正确的执行
2.保存断点:保证中断完成后可以正确返回原程序,就是保存原程序的断点(PC的内容)保存起来
3.中断服务程序寻址:取出中断服务程序的入口地址传给PC
4.保护现场:保存通用寄存器和状态寄存器的内容(即保存ACC寄存器的值),以便返回原程序可以恢复CPU的环境,可以使用堆栈,可以使用特定的存储单元
5.中断服务:主体部分,如通过程序控制需要打印的字符代码送入打印机的缓冲寄存器(中断服务过程中有可能会修改ACC寄存器的值)
6.恢复现场:通过出栈指令或取数指令把之前保存的信息送回寄存器(把原程序算到一般的ACC值恢复原样)
7.中断返回:通过中断返回指令回到原程序断点处

7.系统调用

1.系统调用:操作系统向上提供的一些接口,其中供应程序使用的叫做程序接口,也叫系统调用,系统调用可以理解为可以供程序调用的特殊函数
在这里插入图片描述

在这里插入图片描述
2.系统调用的过程
发出系统调用的请求是在用户态下,对系统调用的处理在核心态下
1.传递系统调用参数
2.执行陷入,进入中断
3.执行系统调用
4.返回应用程序

3.系统调用的种类
按照功能:
设备管理 文件管理 进程控制 进程通信 内存管理

8.操作系统体系结构

1.操作系统的内核:时钟管理,中断管理,原语,对系统资源进行管理
时钟管理:实现计时功能
中断管理:负责实现中断机制
原语:具有原子性,运行只能一气呵成,不可中断的最接近硬件部分,操作系统最底端的特殊程序,运行时间短,调用频繁
对系统资源的管理:存储器管理,设备管理,进程管理
2.操作系统的体系结构
1.大内核和微内核
在这里插入图片描述
2.分层结构
分层结构:将操作系统分为若干层,最底层是硬件,最高层是用户接口,每一层只能调用紧邻它的低层的功能和服务
在这里插入图片描述
优点:便于系统的调试和验证,(从最底层开始一层一层调试,不需要考虑其他部分),易于扩充和维护(需要在操作系统中增加,修改一层中的模块或者整层时,只要不改变相应层间的接口,就不会影响其他层)
缺点:仅仅可以调用相邻低层,难以合理定义各层的边界,效率低,不能跨层调用,系统调用执行时间长

3.模块化
模块化:将系统功能按功能分为若干具有独立性的模块。每个模块具有某一方面的管理功能,规定好各个模块之间的接口,模块之间可以通过接口进行通信,衡量模块之间的独立性主要是内聚性和耦合性两个标准

内聚性模块内部各个部分间联系的紧密程度,内聚性越高,模块独立性越好
耦合性模块之间相互联系和相互影响的程度,耦合度越低,模块独立性越好
在这里插入图片描述
操作系统模块化后:内核=主模块+可加载内核模块
优点:
模块之间的逻辑清晰,确定好模块之间的接口后,可以实现多模块同时开发,支持动态加载新的模块
缺点:模块之间接口定义未必合理实用,模块之间相互依赖,难以调试和验证

4.外核
内核负责进程调度,进程通信等功能,外核负责为用户进程分配未经抽象的硬件资源,且保证资源实用安全
未经抽象的硬件资源:没有经过操作系统映射的资源
优点:用户进程可以更加灵活地使用硬件资源,减少了硬件资源的映射层,提升了效率
缺点:降低了系统的一致性,使得系统变得更加复杂

9.操作系统的引导

1.
在这里插入图片描述
安装了操作系统的磁盘的组成:主引导记录和实际存储内容区域
主引导记录
1.磁盘引导程序:根据分区表读入C盘,找到引导记录PBR
2.分区表:是一个数据结构,说明每一个盘占用的空间大小和地址范围
实际存储内容区域会划分为多个盘符,c盘,d盘这些。
C盘有三部分组成:C盘用于安装,启动操作系统
1.引导记录PBR:负责找到启动管理器
2.根目录
3.其他
操作系统最终会被加载进入主存,主存由RAM和ROM构成,其中RAM断电后数据不复存在,而ROM则反之,所以会在ROM设置一个特殊的程序—自举程序,从此完成操作系统的引导
引导过程:
在这里插入图片描述
2.虚拟机
虚拟机:虚拟化技术,将一台物理机器虚拟化为多台虚拟机,每个虚拟机可以独立运行一个操作系统。
第一类虚拟管理程序:直接运行在硬件上
第二类虚拟管理程序:直接运行在宿主操作系统
在这里插入图片描述

二:进程管理

1.进程和线程

1.进程的引入为了更好的管理,描述程序,进程是一个抽象概念,如果把程序比作一个学生,那么进程就是学生的综合测评表,操作系统(学校)通过综合测评表(进程)来管理学生(程序)
2.进程和程序
程序:是一个静态的概念,本质是放在磁盘中的可执行文件,进程:是一个动态概念,是程序的一次执行过程
QQ是一个程序,打开三次就是三次进程
在这里插入图片描述
3.进程控制块PCB(本质是一个数据结构)
每个进程对应一个PCB,PCB是进程存在的唯一标识,操作系统把对进程这种抽象概念的管理转化为了对PCB这种数据结构的管理
在这里插入图片描述
4.进程的组成
1.进程的组成PCB,程序段,数据段这三个部分组成,PCB是操作系统用的,数据段和程序段是进程自己使用的
PCB:操作系统对进程管理所需要的信息
程序段:包含程序指令
数据段:包含程序运行时产生的各种数据

2.进程的定义
进程是进程实体的运行过程,是系统进行资源分配和调度的独立单位

5.进程的特征
动态性 并发性 独立性 异步性 结构性

6.进程的状态
进程的状态:进程在其生命周期内,由于系统中各个进程之间的制约关系及系统运行环境的变化,所以进程的状态也在不断发生变化,进程通常有五种状态,前三种是基本状态
1.运行态:进程正在处理机上运行,占有CPU
2.就绪态:已经具备运行的条件,但是由于没有空闲的CPU,从而不能运行,系统中处于就绪状态的进程可能有多个,通常将他们排成一个队列,称为就绪队列
3.阻塞态/等待态:进程正在等待某一事件而暂停运行,该状态下,即使处理机空闲,该进程也不能投入运行。
4.创建态:进程正在被创建,尚未被转到就绪态
5.结束态:进程正在从系统中消失,可能是进程正常结束或其他原因中断退出运行

7.进程的状态转换
在这里插入图片描述
运行态到就绪态:时间片到了,让出处理机
运行态到阻塞态:发生请求资源的分配或者事情的发生(中断和异常)
阻塞态到就绪态:请求的资源或者事件发生(I/O操作的结束或中断结束)
注意
1.运行到阻塞是进程自身的主动行为,阻塞到就绪不是进程自身可以控制的,是一种被动行为
2.阻塞态不能直接转为运行态,就绪不能直接转为阻塞态
阻塞–>就绪----->运行 就绪—>运行----->阻塞

8.进程的组织方式
1.链接方式:按照进程的状态将PCB分为多个队列,操作系统持有各个队列的指针

在这里插入图片描述

2.索引的方式
根据进程状态的不同,建立几张索引表,操作系统持有指向各个索引表的指针
在这里插入图片描述
9.进程的控制

1.进程的控制:就是如何实现进程的状态转换-----原语
**2.为什么使用原语来控制进程的转换:**进程的控制是一个复杂的过程,整个过程需要一气呵成,不能中断,所以依靠原语实现。
3.完成进程状态转换需要两步
1.修改PCB中用于标识目前状态的变量state
2.将进程投递到相应的队列
4.原语的原子性如何实现的依靠开中断,关中断两条特权指令实现的CPU每执行完一条指令后,会例行检查中断指令,如果有中断指令,则会暂停运行当前的程序,转而执行相应的中断处理程序,当CPU执行了关中断指令后,就不再检查中断信号了,直到执行开中断指令后才会恢复检查,这样一来,关中断开中断之间的指令序列是不可被中断的,实现了原子性。
5.进程的控制原语
1.进程的创建: 申请空白PCB—>为新进程分配所需要的资源—>初始化PCB----->将PCB插入就绪队列
2.进程的终止:终止改进程和其子进程将所有资源归还给操作系统和其父进程,将其PCB从队列中删除
3.进程阻塞:保护现场,将其状态转换为阻塞态,将PCB插入相应事件的等待队列,将处理机资源调度给其他就绪进程
4.进程唤醒:在等待队列中找到相应的进程的PCB,将其从等待队列中移除,将其状态设置为就绪态,PCB插入就绪队列,等待调度程序调度
5.进程切换:引起的事件有:当前时间片已到;更高优先级的进程到达;当前进程主动阻塞;当前进程终止
过程:1.保存处理机上下文,包括程序计数器和其他寄存器 2.更新PCB信息 3. 把进程的PCB移入相应的队列,如就绪,在某事件阻塞等队 4.选择另一个程序进程执行,并且更新其 PCB 5.更新内存管理的数据结构 6.恢复处理机上下文

10.进程的通信
1.独立性和交互:进程具有独立性,每个进程拥有各自的独立的地址空间,进程间数据互不干扰,所谓进程的通信就是让数据产生交互。
2.进程通信的目的
数据传输 资源共享 通知事件 进程控制
3.实现进程通信的三种方式
共享存储 消息传递 管道通信
1.共享存储:让它们的页表映射到同一片存储空间,这样就可以进程通信了,被映射的区域称为共享存储区,各个进程对共享空间的访问是互斥的
2.消息传递
进程之间的数据交换以格式化的消息为单位,进程通过操作系统提供的发送消息/接收消息两个原语进行数据交换
消息由两个部分组成:消息头:包括发送进程ID,接受进程ID,消息长度等格式化信息
消息体:消息的主题内容
消息的传递方式:
1.直接通信方式:消息的发送进程直接指明进程的ID
在这里插入图片描述

2.间接通信方式:内存中划分出若干个区域,称为信箱,作用是暂存某个进程发送来的消息,多个进程可以向同一个信箱发送信息,也可以从同一个信箱接受信息。
在这里插入图片描述
3.管道通信
管道的本质是一个文件,管道有写端:进程通过写端写入数据,有读端,进程要通过读端读入数据
管道需要两个文件描述符控制读端和写端,只有文件描述符打开,读写才能进行。

11.线程的概念

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/177280.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE5 日记(人物连招:蒙太奇动画通知(含视频链接))

教程https://www.youtube.com/watch?vsWpENaVGj2M&listPLiSlOaRBfgkcPAhYpGps16PT_9f28amXi&index10&ppiAQB 相关蓝图 连招逻辑 动画通知类 逻辑分析 1.用户输入 已搭载战斗系统模块,可以收到输入指令 2.连击 第一次攻击: 第一次攻击,…

windows使用FindWindow函数查找窗口句柄

理解什么是句柄? 对于“句柄”,之前一直停留在一知半解的认识层面,也说不清具体概念,只知道它是一个标识符,用来标记对象或者说某个东西的。只知其名不知其意。目前学习windows编程,对“句柄”做一个完整的…

2.Docker的安装

1.认识Docker的基本架构 下面这张图是docker官网上的,介绍了整个Docker的基础架构,我们根据这张图来学习一下docker的涉及到的一些相关概念。 1.1 Docker的架构组成 Docker架构是由Client(客户端)、Docker Host(服务端)、Registry(远程仓库)组成。 …

图扑 HT for Web 手机端运维管理系统

随着信息技术的快速发展,网络技术的应用涉及到人们生活的方方面面。其中,手机运维管理系统可提供数字化、智能化的方式,帮助企业和组织管理监控企业的 IT 环境,提高运维效率、降低维护成本、增强安全性、提升服务质量,…

我在Vscode学OpenCV 初步接触

OpenCV是一个开源的计算机视觉库,可以处理图像和视频数据。它包含了超过2500个优化过的算法,用于对图像和视频进行处理,包括目标识别、面部识别、运动跟踪、立体视觉等。OpenCV支持多种编程语言,包括C、Python、Java等&#xff0c…

利用两个栈s1,s2模拟一个队列时,如何用栈的运算来实现该队列的运算?写出模拟队列插入和删除的函数。一个栈s1用于插入元素,另一个栈s2用于删除元素

利用两个栈s1,s2模拟一个队列时,如何用栈的运算来实现该队列的运算?写出模拟队列插入和删除的函数。一个栈s1用于插入元素,另一个栈s2用于删除元素。 前置知识点(栈定义,及出栈入栈函数) #def…

【小白专用】Mysql的安装配置教程(详细)

首先简单概述分为几个步骤: 一、下载Mysql 二、安装Mysql 三、验证Mysql安装是否成功 四、 配置环境变量 五、验证配置环境变量是否成功 一、下载Mysql 要在Windows或Mac上安装MySQL,首先从MySQL官方网站下载最新的MySQL Community Server版本&…

降低毕业论文写作压力的终极指南

亲爱的同学们,时光荏苒,转眼间你们即将踏入毕业生的行列。毕业论文作为本科和研究生阶段的重要任务,不仅是对所学知识的综合运用,更是一次对自己学术能力和专业素养的全面考验。然而,论文写作常常伴随着压力和焦虑&…

如何确认目标期刊被SCI或EI收录?

原创内容,仅供参考,欢迎大家批评指正! 目录 通过Web of Science查询SCI期刊1. 登录Web of Science2. 查找目标期刊3. 查看期刊信息 通过Scopus查询EI期刊1. 登录Scopus2. 查找目标期刊3. 查看期刊信息 参考 通过Web of Science查询SCI期刊 1…

Django实战项目-学习任务系统-兑换物品管理

接着上期代码框架,开发第5个功能,兑换物品管理,再增加一个学习兑换物品表,主要用来维护兑换物品,所需积分,物品状态等信息,还有一个积分流水表,完成任务奖励积分,兑换物品…

golang的类型断言

前言:原因很简单,写的代码panic了。报错如下。为此专门看下golang的类型断言。 “[PANIC]interface conversion: interface {} is string, not float64”。 1、类型断言(assertion) 所谓“类型断言”即判断一个变量是不是某个类型的实例(简单来讲就是判…

【前端早早聊直播回顾】Harmony Next 与 Flutter 的不解之缘

Hello 大家好,我是 Flutter GDE 郭树煜,本次要分享的话题是关于鸿蒙与 Flutter 的故事,可能没接触过的会感觉有点懵,Harmony 和 Flutter 有啥关系,它们怎么会被放到一起讲了呢?接下来就让我们来聊聊这个问题…

世界电信日 | 人大金仓助力中国移动租赁核算系统升级上线

世界电信日 5月17日恰逢第五十四个世界电信日,运营商作为新型基础设施建设以及维护网信安全的主力军,掌握关键核心技术,实现科技自立自强刻不容缓。 作为数据库领域国家队,人大金仓坚持原始创新,低难度、低成本、低风…

第二证券:怎么判断股票浮筹多少?

股票的浮筹是指公司的股份中,揭露生意在市场上的股份,一般是指除了大股东和筹码安稳的组织等,其他组织和个人能够自在生意的股份。在出资股票时,了解公司的浮筹是非常重要的,由于它直接联络到股票的供需联络和股价动摇…

el-tabel表格加个多选框

<template><div><el-checkbox v-model"checked" :disabled"checkedDis" change"onAllSelectChange">多选框</el-checkbox>点击多选框&#xff0c;禁用列表复选框<el-table ref"multipleTable" :data"…

Nginx+keepalived实现七层的负载均衡

1.keepalived VRRP 介绍 keepalived是什么&#xff1f; keepalived是集群管理中保证集群高可用的一个服务软件&#xff0c;用来防止单点故障。 keepalived工作原理 keepalived是以VRRP协议为实现基础的&#xff0c;VRRP全称Virtual Router Redundancy Protocol&…

CMMI/ASPICE认证咨询及工具服务

服务概述 质量专家戴明博士的名言“如果你不能描述做事情的过程&#xff0c;那么你不知道你在做什么”。过程是连接有能力的工程师和先进技术的纽带&#xff0c;因此产品开发过程直接决定了产品的质量和研发的效率。 经纬恒润可结合多体系要求&#xff0c;如IATF16949\ISO26262…

解决VSCode使用SSH远程连接时无法指定用户名的问题

Windows 11自带OpenSSH客户端&#xff0c;和VSCode配合得很好&#xff0c;没有这个问题。 今天要说的是旧版本Windows 7/8/10系统遇到的问题。 PS: Windows 7可以运行的最后版本是VSCode 1.80.2 由于Windows 7/8/10没有自带的OpenSSH客户端&#xff0c;但可以调用MSYS环境下的…

PyQt界面开发的终极指南

文章目录 前言一、PyQt 简介二、PyQt 与 Qt 的蒙娜丽莎三、PyQt 布局管理器3.1、简介3.2、项目实战3.2.0、添加伸缩项 layout.addStretch&#xff1a;控制布局中组件之间的间距。3.2.1、垂直布局管理器 QVBoxLayout&#xff1a;控件按照从上到下的顺序排列3.2.2、水平布局管理器…

Yuhan Blu-ray DVD Creator for Mac: 打造专属的高清视听盛宴

在如今的高清时代&#xff0c;谁能拒绝一款能够轻松将高清影片刻录成蓝光DVD的刻录机呢&#xff1f;而Yuhan Blu-ray DVD Creator for Mac正是这样一款令人惊艳的软件。 作为一款专为Mac用户打造的蓝光DVD刻录机&#xff0c;Yuhan Blu-ray DVD Creator for Mac支持将各种高清视…