操作系统
文章平均质量分 60
程序小黑
这个人很懒,什么都不想说。。
展开
-
关于MIMD计算机
今天收到了一个邮件,问了我一个这样的问题:多CPU能否同时处理多个进程?我们都知道,CPU中每个核心都具有独立处理资源的能力,而多核心CPU的操作系统中,进程在微观上是并发执行的。所以,我们是没有办法使用单核心的CPU的进程控制方法进行控制的。也就是说,如果我们采用常规的PV操作对多核心CPU中来实现对进程的互斥和同步,可能会产生很多的问题。常见的解决方法为RPC、管道、共享缓冲区或者是Socket,不过Socket的效率太低,还是一般选择远程过程调用来解决互斥和同步问题。而根据总所周知的Flnn原创 2022-03-27 15:01:50 · 6865 阅读 · 2 评论 -
操作系统:先来先服务算法和最高优先数优先的C语言实现
最近在复习操作系统,有如下知识点:1)进程调度算法:采用os的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法。2)每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。3)进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。进程的运行时间以时间片为单位进行计算。4)每个进程的状态可以是就绪W(Wait)、运行R(Run)、或完成F(Finish)三种状态原创 2022-03-03 13:31:46 · 3484 阅读 · 0 评论 -
关于在树莓派上安装Ubuntu的网络设置的踩坑
昨天晚上想用树莓派做一个局域网的网络服务器,本来是打算安装Centos7的,但是ARM版本的在树莓派官网自带的系统烧录软件中是没有的,去Centos7的官网下载了ARM版本64位的系统后,使用win32disk软件进行烧录,16GB的TF卡还有14GB没有被使用,导致服务器运行环境无法被正常安装,记录一下踩坑细节。后来换上了Ubuntu20.04-Server版本,由于在路由器上的设置,使用网线直连没有办法上网,拿不到IP地址,就用nmtui先设置了网络。如果WIFI是中文,可能会出现乱码,在命令行模式原创 2021-07-16 14:18:29 · 615 阅读 · 0 评论 -
centos7安装LAMP环境
由于最近偶尔进行服务器相关知识的学习测试,需要反复搭建LAMP环境。避免无意义劳动,把配置写成了shell脚本,可以一键运行systemctl stop firewalldsetenforce 0yum -y install httpdsystemctl start httpd.servicesystemctl enable httpd.serviceyum install php* -y --skip-brokensystemctl restart httpdyum install ma原创 2021-06-11 13:03:20 · 302 阅读 · 4 评论 -
C:/windows/system32无权限解决方法
更改所有者为当前用户,替换所有子文件和子文件的所有者为当前用户,并提供完全控制权限。原创 2020-05-15 09:45:14 · 11809 阅读 · 0 评论 -
oh-my-zsh安装插件autojump、zsh-autosuggestion 以及 zsh-syntax-highlighting
最近把windows系统卸载了,换成了manjor系统,manjor真香~对于终端,没有使用默认的/bin/bash,装了一个zsh。对于zsh,主要优点就是可以添加一些插件来使用。这边主要推荐以下几个:autojumpzsh-autosuggestionzsh-syntax-highlighting先在配置文件.zshrc 的 plugins 中添加添加插件(可灵活更改),三个插件安装完后再用 source ~/.zshrc 更新配置文件使更改生效配置文件的路径是当前用户目录下的./.原创 2020-05-10 11:28:26 · 5991 阅读 · 1 评论 -
考前准备:操作系统错题部分知识点整理(1)
1、LINUX操作系统能支持多种目前流行的文件系统:EXT2,EXT3,FAT,FAT32,VFAT,ISO9600,但是不包括X Windows。2、操作系统设计过程中面临的主要困难分别是:设计复杂程度高、正确性难以保证、研制周期长3、PSW是程序状态字,他记录了处理器的运行模式信息。4、CF 进位标志位 ZF置零标志位 SF符号标志位 OF溢出标志位5、用户可以利用信息维护系统调用来设...原创 2019-10-15 14:41:13 · 427 阅读 · 1 评论 -
操作系统第五章思考题和练习题(部分)
1、说明产生死锁的四个必要条件:①、互斥条件②、循环等待条件③、不可剥夺条件④、请求和保持条件2、死锁和饥饿有什么相同点和不同点:死锁:一组进程中的每一个进程均无期限的等待被该组进程中的另一个进程所占有的所有且永远不会释放的资源。饥饿:饥饿是由于某一进程所需要的资源数量一直得不到满足所处于等待状态的状态。3、试着叙述死锁产生的原因、必要条件和解决死锁的方法。产生原因:1、资源竞...原创 2019-10-14 11:01:24 · 2121 阅读 · 3 评论 -
操作系统第四章思考题与练习题
1、何谓之与时间有关的错误?举例说明之。并发进程执行时一定会产生与时间有关的错误吗?为什么。与时间有关的错误是指两个程序都以各自的速度交叉着运行,同时访问共享信息导致的错误。比如程序A对共享变量p执行+1操作后,休眠一秒输出变量p,程序B对共享变量p执行减1操作后,休眠一秒输出变量p。导致的结果就会和想象中的不相同。并发程序不一定都导致时间相关的错误,我们可以对共享变量加锁来解决这个问题2...原创 2019-10-14 10:34:57 · 2367 阅读 · 0 评论 -
操作系统第三单元思考题和练习题
1、什么是多道程序设计多道程序设计是指在计算机中同时存在两个或者两个以上的在操作系统管理下互相穿插运行的程序。2、多道程序设计怎么提高系统效率?多道程序设计一定能提高系统效率么?多道程序设计通过在极短时间内不断切换程序执行,减少IO等待时间来提高系统效率。多道程序设计可能会导致死锁,所以不一定能提高系统效率。3、操作系统为什么要引入“进程”?进程和程序有什么区别?进程是独立占有资源的一...原创 2019-10-11 10:12:08 · 912 阅读 · 0 评论 -
操作系统第二单元思考题与练习题
1、请简述处理器的组成和工作原理。你认为哪些部分和操作系统密切相关。为什么?处理器由运算器、存储器、控制器组成,其中运算器负责算数运算、存储器负责数据存储、控制器负责流程控制。每一个部分都和操作系统密切相关。2、为了支持操作系统、现代处理器一般都提供哪几种工作状态,以隔离操作系统程序和普通程序?每种状态各有什么特点?两种工作状态,分别是目态和管态。操作系统程序只能在管态运行,普通程序只能在...原创 2019-10-10 10:44:43 · 1845 阅读 · 0 评论 -
操作系统第一单元思考题与练习题
1、什么是操作系统、请说明操作系统在计算机系统中的地位和作用。操作系统是计算机系统中的一个系统软件,他是一些这样的程序模块的集合,他们能有效的管理和组织计算机系统中的硬件资源和软件资源、合理的组织计算机系统的工作流程、控制程序的执行、并向用户提供各种功能服务。使得用户更加方便、有效的使用计算机、并能使计算机系统更加高效的运行。作用:合理的管理和组织计算机系统的运行 合理的组织计算机系统...原创 2019-10-10 10:44:00 · 823 阅读 · 0 评论 -
操作系统之基本分段存储管理方式
和分页存储最大的不同就是离散分配时所分配的地址空间的基本单位不同进程的地址空间按照程序自身的逻辑关系划分为若干个段。每一个段都有一个段名,每段从0开始编址。以段为单位进行分配,每个段在内存中占据连续的空间,各段之间可以不相连。段号+段内地址(段内偏移量)组成段16位 16位每个进程最多可以有2^16的段,每个段的最大长度为2^16=64kb段表作用类似于页表,记录了各个逻辑段到...原创 2019-10-10 08:12:19 · 2080 阅读 · 0 评论 -
操作系统之内存管理概念(中)
关于内存覆盖技术接上次的文章,还没有写完,今天就把他补完吧。1、覆盖技术 内存中通常会分配一个固定区和若干的覆盖区, 不常用的段会放在覆盖区,需要时再调入内存。 覆盖技术只能用于早起的操作系统中,对用户不透明。2、交换技术设计思想:内存空间紧张时,将内存中的某些进程暂时换出外存,把外存中某些具备运行条件的进程换入内存。将内存中某些进程暂时换出外存。暂时换出外存等待的进程状态为挂...原创 2019-09-03 09:23:52 · 734 阅读 · 0 评论 -
操作系统之内存管理概念(上)
之前由于“中职组磐云杯网络空间安全“的赛项和一系列乱七八糟的项目和单子,没有更新博客,也很少去学习。暑假给自己放了两个月的假,现在打算好好学习,也准备即将到来的九月份和十月份的考试。今天复习一下操作系统的内存管理。关于内存 内存是用于存放数据的硬件,程序执行前需要先放到内存中才可以被CPU处理。我很少写一些关于内存的话题,曾经也写过一篇: https://blog.csdn.net...原创 2019-09-02 21:56:10 · 368 阅读 · 0 评论 -
python基于socket进行端口转发实现后门隐藏
python基于socket进行端口转发实现后门隐藏思想:用户正常浏览器访问请求通过8080端口,请求若为http请求,则正常转发到80端口保证网站正常运行。否则转发到8888端口执行系统命令。8888端口监听代码:#!/usr/bin/env pythonfrom socket import *import osHOST='127.0.0.1'PORT=8888BUFSIZE...原创 2018-10-09 20:29:33 · 49383 阅读 · 0 评论 -
现代计算机内存对齐机制
64位计算机和32位计算机CPU对内存处理的区别64位CPU,位宽为8个字节。(64位/8位/字节=8字节)32位CPU,位宽位4个字节。(32位/8位/字节=4字节)我们假想内存空间是一个二阶矩阵。(事实上内存是一维线性排列的)那么二维数组的列数在64位CPU上就是8字节,在32位CPU上就是4个字节。CPU为了寻址方便,会自动优化内存,来让数据尽量在同一二维数组行中,以减少寻址时间。...原创 2018-11-01 11:08:57 · 41184 阅读 · 0 评论 -
FBCTF平台搭建
自从入了安全的坑,就喜欢去各大CTF平台战斗==其实我也特别想拥有一个属于自己的CTF平台。直到我有一天发现了一个炫酷的平台——FBCTF。首先你要使用Ubuntu来安装并运行这个平台。我在kali里装过,没装上去。好像是python的一个模块一直装不上跳错。至于别的操作系统我就没有试过了。。这里官方钦定版本是ubuntu14.0.3.但是其实你ubuntu的版本在2016年之后的理论上都是可...原创 2018-11-02 08:29:18 · 41984 阅读 · 5 评论 -
关于FreeFloat 1.0版本的EXP编写
首先使用ODB运行FTP SERVER 1.0带有缓冲区溢出漏洞的程序,然后按下F9让ODB运行我们带有漏洞的程序。我们先使用kali自带的pattern_create.rb这个脚本来生成一串用于测试缓冲区溢出的代码,以便我们在下一步测试缓冲区大小。这里我们所要使用的脚本位于/usr/share/metasplot-framework/exploit/tools下。这个目录下存在脚本patte...原创 2019-02-14 09:30:42 · 1916 阅读 · 0 评论 -
linux系统下安装msf框架
命令:wget http://downloads.metasploit.com/data/releases/metasploit-latest-linux-installer.runchmod 755 metasploit-latest-linux-installer.run./metasploit-latest-linux-installer.run等待运行结束即可。关...原创 2018-12-10 13:23:04 · 38321 阅读 · 3 评论 -
linux下/etc/rc.local的相关问题
今天在布环境的时候,遇到了一些小问题。主要是自己写了一个python的程序,并在其中使用了subprocess模块,使其产生子进程并调用我的新elf文件(linux下的二进制可执行文件)。由于我的python脚本和elf文件是放在一起的,所以我在subprocess.Popen中就直接使用了./***来执行我的elf文件,导致的结果就是我执行文件后没有得到任何返回信息。。也就是elf文件没有执行...原创 2018-12-11 12:46:19 · 33526 阅读 · 2 评论 -
Linux Shell Shock漏洞利用和实战
漏洞介绍:Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开。许多互联网守护进程,如网页服务器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码。这可使攻击者在未授权的情况下访问计算机系统。——摘自维基百科漏洞实验环境搭建:1、 以root权限安装4.1版本的bansh。下载...原创 2019-03-01 09:37:35 · 5167 阅读 · 0 评论 -
The Apache how to limit the visitor’s IP
First locate the context in the config “/etc/https/conf/httpd.conf” with “<Directory /var/www/html/></Directory>”.If we want to deny special IP address like “192.168.1.1” visit our websit...原创 2019-04-28 09:18:36 · 320 阅读 · 0 评论 -
linux中在ftp里建立虚拟用户
(Setenfore 0)首先进入主配置文件:vim /etc/vsftpd/vsftpd.conf添加如下配置: guest_enable=yes //允许来宾用户登陆 guest_username=vuser //设置虚拟用户映射成的系统用户 user_config_dir=/ftpuser //虚拟用户配置目录 allow_writeable_chr...原创 2019-04-28 09:20:51 · 425 阅读 · 0 评论 -
TOMCAT 中间件安全加固
TOMCAT 中间件安全加固1、 tomcat中间件安装:yum install httpd* -yyum install tomcat* -y然后就能看到系统中多出了个端口:其中8005端口是管理口,8080是默认的tomcat页面我们可以通过访问本地8080口来判断服务是否安装成功其中下文会详细介绍如何更改tomcat的管理口和页面显示端口。其中, Tomcat配置文件...原创 2019-04-28 09:26:14 · 1951 阅读 · 0 评论 -
linux下的栈溢出实验
linux下的栈溢出实验关于操作系统的ASLR地址随机化首先我们在实验之前需要了解以下ASLR机制。即linux平台下的地址随机化机制。它将进程中的某些内存空间地址进行随机化来增大入侵者预测目的地址的难度。从而降低被成功入侵的风险。当前Linux、Windows等主流操作系统都已经采用该技术。linux下的ASLR分为0,1,2三级,用户可以通过一个randomize_va_space进行等...原创 2019-02-14 09:30:52 · 1425 阅读 · 0 评论