![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
Am0o0s
这个作者很懒,什么都没留下…
展开
-
操作系统理论细节摘录总结 2
信号量信号量是最早出现的用来解决进程同步与互斥问题的机制。信号量(Saphore)值表示相应资源的使用情况。信号量S>=0时,S表示可用资源的数量。执行一次P操作意味着请求分配一个资源,因此S的值减1;当S<0时,表示已经没有可用资源,S的绝对值表示当前等待该资源的进程数。请求者必须等待其他进程释放该类资源,才能继续运行。而执行一个V操作意味着释放一个资源,因此S的值加1;若S<0,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程,使之运行下去。注意,信号量的值只能由PV操原创 2020-07-06 17:44:03 · 136 阅读 · 0 评论 -
操作系统理论细节摘录总结 1
分时操作系统具有以下特征: | 实时操作系统基本特征:1.多路性 | 1.及时性2.交互性 | 2.可靠性3.独占性 |4.及时性原创 2020-07-02 10:38:14 · 187 阅读 · 0 评论 -
操作系统存储管理之虚拟内存地址和物理内存地址摘录总结
物理内存,在应用中,自然是顾名思义,物理上,真实的插在板子上的内存是多大就是多大了。而在CPU中的概念,物理内存就是CPU的地址线可以直接进行寻址的内存空间大小。比如8086只有20根地址线,那么它的寻址空间就是1MB,我们就说8086能支持1MB的物理内存,及时我们安装了128M的内存条在板子上,我们也只能说8086拥有1MB的物理内存空间。同理我们现在大部分使用的是32位的机子,32位的386...转载 2020-04-14 15:03:10 · 512 阅读 · 0 评论 -
操作系统之调度--死锁
文章目录造成死锁的核心原因死锁的必要条件死锁的解决方法死锁的介绍:多个进程并发运行,对临界资源的访问出现问题造成死锁的核心原因系统资源不足(资源数〈要求该种资源的进程数)进程的推进顺序非法(不合理)死锁的必要条件(1)互斥条件:至少有一个资源是临界资源。(2)不可剥夺条件:资源不能被抢占。(3)请求与保持条件:一个进程占有一个资源,并等待另一个资源。(4)环路条件:存在一个进...原创 2020-04-09 09:44:46 · 192 阅读 · 0 评论 -
AT&T格式的汇编与Intel格式的汇编寻址方式的不同
AT&T: immed32(basepointer, indexpointer, indexscale)Intel: [basepointer + indexpointer × indexscale + imm32)如果操作系统工作于保护模式下,用的是32位线性地址,所以在计算地址时不用考虑segment:offset的问题。上式中的地址应为:imm32 + basepointe...原创 2020-03-29 11:10:18 · 244 阅读 · 0 评论 -
操作系统---线程知识点记录
Sleep()使进程自己进入等待态,时间到了,操作系统会叫醒进程(该进程已经提前通知操作系统)线程进程的特点是分离,线程的特点是不分离线程拥有:线程号(Thread ID)程序计数器(Program counter)寄存器(Register set)栈(Stack)属于同一个进程的线程共享除了线程自己拥有的东西(上面4点)单线程的进程多线程的进程(进程里面有多条指令同时进行)...原创 2020-03-24 23:05:42 · 108 阅读 · 0 评论 -
中断的相关知识
文章目录中断的人类定义中断的类型中断向量中断向量表中断的优点与缺点中断处理中断的人类定义第一个概念是把同步和异步中断分别称为异常(exception)和中断(interrupt);第二个概念是进一步的,对于中断和异常,Intel又再细分了很多类,将中断分为可屏蔽中断和不可屏蔽中断;将异常分为故障、陷阱、异常中止和编程异常。中断:又称为异步中断,是其他硬件依照CPU时钟信号随机产生的。中断又...原创 2020-03-22 19:21:17 · 564 阅读 · 0 评论 -
进程切换ing
进程控制块(PCB)简单的来说他的每一个节点就是结构体,每一个节点与一个进程绑定在一起。所有的PCB在一起又组成新的一种数据结构决定了操作系统进程管理的所有的东西Task stat进程的状态-10大于0327行结构体代码通过PCB可以了解进程的所有情况在进程切换时,PCB的作用保存状态,是为了恢复状态,当前进程运行下所有的信息(涉及到的寄存器的信息),存到PCB中。保证下次...原创 2020-03-18 23:04:14 · 111 阅读 · 0 评论 -
操作系统——进程相关及系统引导
操作系统运行时划分不同的模式,操作系统运行在内核模式,应用程序运行在用户模式,权限不同,有些指令也不能运行。内核与用户态之间不禁包含对内存的保护,还要指令的限制。直接操作硬件端口的指令in从硬件端口读入out从硬件端口读出用户态不允许运行这两个指令由于应用程序也需要与硬件进行交互,因此就产生了系统调用。应用程序想做什么事情就利用系统调用,然后操作系统做中转处理。...原创 2020-03-16 19:49:44 · 382 阅读 · 0 评论 -
Linux程序接口实验
取进程标志及用户信息,了解Linux部分操作系统调用的用法。使用Gedit 编写程序pflag.c#include<unistd.h>#include<pwd.h>#include<sys/types.h>#include<stdio.h>int main(int argc,char **argv){ pid_t my_pid,par...原创 2020-02-12 10:17:24 · 877 阅读 · 0 评论 -
Ubuntu的运行级别,关机与重启
Ubuntu系统的运行级别与其他Linux系统的运行级别有些区别运行级别含义0所有进程终止1单用户模式,用于维护系统,只有极少数的进程运行2~5图形界面的多用户模式6重新启动机器ubuntu 系统的运行级别2~5是一样的。默认运行级别是2,但是Ubuntu服务器版的默认运行级别是 5,这些发行版,不尽一致,使用runlevel命令查看即可。切...原创 2020-02-10 21:35:43 · 934 阅读 · 0 评论 -
Ubuntu Linux 操作系统与实验教程基础命令
Shell功能以用户名amos(笔者自己的用户名)进行登陆,当前的工作目录是/home/amos,提示符号为$由普通用户转为哦超级用户,超级用户的用户名为root登陆,提示符号为#普通用户与超级用户的区别1.登陆名与提示符不同2.权限不同,超级用户对文件和目录具有全权,而普通用户的权限是有限的。显示日期和时间date查看登陆系统的用户(在切换用户时,别的用户在后台挂起)who 果...原创 2020-02-08 21:14:57 · 760 阅读 · 0 评论 -
操作系统的用户接口
操作系统为用户提供了两种调用其服务和功能的接口:程序接口和操作接口1.程序接口又称为应用编程接口(API),供程序员在编制程序时以程序语句或指令的形式调用操作系统的服务和功能。许多操作系统的程序接口由一组系统调用(System Call)组成,用户程序使用“系统调用”即可获得操作系统的底层服务,使用或访问系统中的各种软硬件资源。系统调用是为了扩充机器功能,增强系统能力,方便用户使用而在内核中建...原创 2020-02-08 19:12:08 · 3190 阅读 · 0 评论 -
操作系统的发展及分类
操作系统的发展1.人工操作系统阶段打孔,人工就是根打孔有关,这让我想到了高中的打孔计时器。一条纸带,纸带相当与存储器。极其不方便。2.管理程序阶段由操作员在管理程序和人工之间交互、3.多道程序设计和操作系统的组成多道程序设计是指允许多个程序同时进入计算机系统的主存储器并启动进行交替计算的方法,即计算机内存中同时存放了多道程序,它们都处于开始和结束之间。从宏观上讲,多道程序并发运行,它们...原创 2020-02-07 22:16:18 · 150 阅读 · 0 评论 -
假脱机(spooling)技术实现原理
将独占设备改造为共享设备由于Spooling技术把所有用户进程的输出都送入输出井,然后再由输出进程完成打印工作,而输出井在磁盘上,为共享设备。这样,Spooling技术就把打印机等独占设备改造成立共享设备。实现了虚拟设备功能由于Spooling技术实现了多个用户进程共同使用打印机这种独占设备的情况,从而实现了把一个设备当成多个设备来使用,即虚拟设备的功能。假脱机技术有输入输出井,输入缓冲区...原创 2020-02-07 20:05:03 · 5392 阅读 · 0 评论 -
操作系统原理第一章概论
操作系统的目标1.方便用户使用:提供了用户与计算机之间的友善接口(操作系统向用户提供的应用程序接口远比硬件向用户提供的接口简单易用)。2.扩展机器功能操作系统如同”血肉“,有了扩展与增值的功能。3.管理系统资源操作系统代替人类来管理计算机系统软硬件资源。相对与人工管理来说,其更加的快速,精准。4.提高系统效率操作系统代替了人对计算机的自动化管理,由此提高了系统效率。5.构筑开放环境...原创 2020-02-06 23:16:49 · 416 阅读 · 0 评论 -
Windows下cmd命令cd不进某目录
问题出现:配置环境变量时发现cd不进去目标目录,但提示框又不报错,搞不懂什么原因造成的,后来学习了一下,原来进入盘符不需要用cd命令,唉 ????,还是不会的不懂了。记录一下方法一进入指定盘,盘符+":",不区分大小写例如欲进入F盘,直接输入F:即可(或f:)(只有盘符不区分,其下的一级到多级目录需要区分大小写)方法二cd 文件路径;后回车无效,可以加/d,解决例如进入d盘cd /d ...原创 2020-02-06 20:26:27 · 9105 阅读 · 3 评论 -
BIOS的启动原理学习--加载引导程序
在Windows系统以及有图形界面的其他操作系统中要想执行一个程序,必须在窗口中双击它,或者在命令行界面中输入相应的执行命令。从计算机底层机制上讲,这其实是在一个已经运行起来的操作系统的可视化界面或命令行界面中执行一个程序。感觉要进入先有鸡还是先有蛋的循环之中了。但是,在开机加电的一瞬间,内存中什么程序也没有,没有任何程序在运行,不可能有操作系统,更不可能有操作系统的用户界面。既然软件方法不可能...原创 2020-01-27 19:05:08 · 6364 阅读 · 2 评论 -
Linux系统想要切换到root用户时出现authentication failure
第一种:刚刚装完系统时没有设置root用户密码运行命令sudo passwd第二种:root密码输入错误,root密码与初始进入的用户的密码不一致,仔细回忆一下。原创 2020-01-27 17:20:16 · 408 阅读 · 1 评论 -
Ubuntu Linux 操作系统与实验教程--Linux系统的基本组成
1.Linux内核内核是系统的“心脏”,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层。内核是操作系统的核心,具有很多最基本的功能,如虚拟内存,多任务,共享库,需求加载,可执行程序和TCP/IP网络功能。Linux内核的模块分为以下几个部分:存储管理,CPU和进程管理,文件系统,设备管理和驱动,网络通信,系统的初始化和系统调用。Linux内核是运...原创 2020-01-27 11:39:48 · 886 阅读 · 0 评论 -
Ubuntu命令--dpkg
安装软件(软件包已下载)命令:dpkg -i 包名(注意目录)列出与该包先关联的文件命令:dpkg -L package安装完包后,可以用此命令查看软件安装到什么地方。显示包的版本命令:dpkg -l package移除软件(保留配置)命令:dpkg -r package 移除软件(不保留配置)命令:dpkg -P package查找包的详细信息命令:dpkg...原创 2020-01-25 20:45:44 · 436 阅读 · 0 评论 -
Ubuntu Linux 操作系统与实验教程--概述
《Ubuntu Linux 操作系统与实验教程》该书使用的教学操作系统是优麒麟(Ubuntu国产修改),后续实验本人使用的是Ubuntu 19.10服务器版。命令没有多少区别。虚拟机可以在一台机器同时运行两个或者多个Windows,Linux,UNIX系统。虚拟磁盘分配好后,在上面分区,格式化,安装操作系统,安装应用程序和软件对真实的硬盘数据均无影响。也可以将几台虚拟机连接为一个局域网,进行...原创 2020-01-25 17:03:55 · 1325 阅读 · 0 评论 -
自己编写操作系统2--初始镜像编写以及VM启动
1.初始镜像编写查看一个操作系统,想要被BIOS找到,依靠的就是引导扇区。所以操作系统的第一步就是实现引导扇区.使用nasm汇编语言先用汇编语言写出编写镜像代码,然后最后用nasm将这段汇编翻译成机器码。翻译命令nasm HiBoxOS.nsm -o HiBoxOS.img注意系统path路径添加,cd进入目录查看16进制镜像文件利用16进制文件编辑器或者IDE内置插件查看机器码...原创 2020-01-24 13:12:37 · 280 阅读 · 0 评论 -
编写操作系统1--概述
打算做这件事很久了,一直拖到今天才开工,事情真的多,又到了过年期间,不得不做一些生活琐事,唉,比较难集中精力了,只有深夜才有思路迸发,今天中午整理一下。所谓的编写操作系统,就是想办法制作一张“含有操作系统的,能够自动启动的磁盘”。1.在Windows(或其他)操作系统上编写源代码2.用C语言编译器编译源代码,生成机器语言文件3.对机器语言文件进行加工,生成软盘映像文件4.将映像文件写入磁...原创 2020-01-22 11:41:41 · 2343 阅读 · 0 评论 -
关于Kali-linux2019.4系统安装后乱码问题
问题1,文件系统方框乱码2,图标名方框乱码3,应该的中文介绍出现方框乱码原因缺少中文包解决方案打开终端输入sudo apt-get install ttf-wqy-zenhei原创 2020-01-20 13:25:14 · 503 阅读 · 1 评论 -
CentOS关机与重启命
Linux centos重启命令: 1、reboot 普通重启 2、shutdown -r now 立刻重启(root用户使用) 3、shutdown -r 10 过10分钟自动重启(root用户使用) 4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启...转载 2020-01-05 22:44:24 · 310 阅读 · 0 评论 -
解决ubuntu19.0‘E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用) ’
出现这个问题的原因可能是:在ubuntu系统的termial下,用apt-get install 安装软件的时候,如果在未完成下载的情况下将terminal close。此时 apt-get进程可能没有结束。结果,如果再次运行apt-get install 命令安装软件时,出现如上错误。即有另一个程序正在占用apt-get install进程,由于它在运行时,会占用软件源更新时的系统锁(简称‘系...原创 2019-12-01 16:20:48 · 1077 阅读 · 0 评论 -
BIOS启动原理学习--加载第二部分代码-setup
寒假打算写一个操作系统,当然没有Windows和Linux系列的OS以及MacOs那么宏伟的啦。或许只有十分简单的桌面,但它的确算是个OS吧。最近要期末考试和四级了,因此博客更新的不频繁了。先立一个Flag...原创 2019-11-24 20:37:38 · 851 阅读 · 0 评论 -
Windows&Android&ios后台机制总结
Windows / Android :软件开启,分配内存;不管前台后台,内存都是用这么多;软件关闭,占用的内存被释放;开启的软件太多,内存不够了,那就杀掉前边的软件,释放内存。就像体育课上发篮球,大家一人一个,练完还回来,不够了怎么办,瞅瞅谁偷懒了直接收回来。这样简单粗暴的机制被称为“真后台”,面对越来越高的系统和软件需求就一个劲堆内存呗,安卓阵营现在 12GB 了吧,Windows,还记得...原创 2019-11-01 22:08:23 · 1725 阅读 · 0 评论