当前位置:文档之家› 中南大学操作系统安全实验报告

中南大学操作系统安全实验报告

中南大学操作系统安全实验报告
中南大学操作系统安全实验报告

操作系统安全课程设计

学院:信息科学与工程学院专业班级:

指导老师:

学号:

姓名:

《操作系统安全》实验一

……Windows系统安全设置实验

一、实验目的

1、了解Windows操作系统的安全性

2、熟悉Windows操作系统的安全设置

3、熟悉MBSA的使用

二、实验要求

1、根据实验中的安全设置要求,详细观察并记录设置前后系统的变化,给出分析报告。

2、采用MBSA测试系统的安全性,并分析原因。

3、比较Windows系统的安全设置和Linux系统安全设置的异同。

三、实验内容

1、配置本地安全设置,完成以下内容:(运行s ecpol.msc命令)

(1)账户策略:包括密码策略(最小密码长度、密码最长存留期、密码最短存留期、强制密码历史等)和账户锁定策略(锁定阈值、锁定时间、锁定计数等)

(2)账户和口令的安全设置:检查和删除不必要的账户(User 用户、

Duplicate User 用户、测试用户、共享用户等)、禁用guest 账户、禁止枚举帐号、创建两个管理员帐号、创建陷阱用户(用户名为Administrator 、权限设置为最低)、不让系统显示上次登录的用户名。

(3)设置审核策略:审核策略更改、审核账户登录事件、审核账户管理、审核登录事件、审核特权使用等

(4)设置IP安全策略

(5)其他设置:公钥策略、软件限制策略等

2、Windows 系统注册表的配置

(1)找到用户安全设置的键值、SAM 设置的键值

(2)修改注册表:禁止建立空连接、禁止管理共享、关闭139端口、防范SYN 攻击、减少syn-ack 包的响应时间、预防DoS 攻击、防止ICMP 重定向报文攻击、不支持IGMP 协议、禁止死网关监控技术、修改MAC 地址等

操作。

建立空连接:

“Local_Machine\System\CurrentControlSet\Control\ LSA-RestrictAnonymous”的值改成“1”即可。

禁止管理共享:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters项对于服务器,添加键值“AutoShareServer”,类型为“REG_DWORD”,值为“0”。

对于客户机,添加键值“AutoShareWks”,类型为“REG_DWORD”,值为“0”。

关闭139端口:

在“网络和拨号连接”中“本地连接”中选取“Internet协议(TCP/IP)”属性,进入“高级TCP/IP 设置”“WINS 设置”里面有一项“禁用TCP/IP的NETBIOS”,打勾就关闭了139端口。

防范SYN攻击:

相关的值项在HKLM\SYSTEM\CurrentControlSet\Service \Tcpip\Parameters下。

(1)DWORD:SynAttackProtect:定义了是否允许SYN淹没攻击保护,值1表示允许起用Windows的SYN淹没攻击保护。

(2)DWORD:TcpMaxConnectResponseRetransmissions:定义了对于连接请求回应包的重发次数。值为1,则SYN淹没攻击不会有效果,但是这样会造成连接请求失败几率的增高。

SYN淹没攻击保护只有在该值>=2时才会被启用,默认值为3。

(上边两个值定义是否允许SYN淹没攻击保护,下面三个则定义了激活SYN淹没攻击保

护的条件,满足其中之一,则系统自动激活SYN淹没攻击保护。)

减少syn-ack包的响应时间:

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpMaxConnectResponseRetran smissions定义了重发SYN-ACK包的次数。增大NETBT的连接块增加幅度和最大数器,NETBT使用139端口。

HKLM\SYSTEM\CurrentControlSet\Services\NetBt\Parameters\BacklogIncrement默认值为3,最大20,最小1。

HKLM\SYSTEM\CurrentControlSet\Services\NetBt\Parameters\MaxConnBackLog默认值为1000,最大可取40000

预防DoS攻击:

在注册表

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters中更改以下值可以防御一定强度的DoS攻击

SynAttackProtect REG_DWORD 2

EnablePMTUDiscovery REG_DWORD 0

NoNameReleaseOnDemand REG_DWORD 1

EnableDeadGWDetect REG_DWORD 0

KeepAliveTime REG_DWORD 300,000

PerformRouterDiscovery REG_DWORD 0

EnableICMPRedirects REG_DWORD 0

防止ICMP重定向报文的攻击:

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\ EnableICMPRedirects

REG_DWORD 0x0(默认值为0x1)

该参数控制Windows 是否会改变其路由表以响应网络设备(如路由器)发送给它的ICMP重定向消息,有时会被利用来干坏事。Windows中默认值为1,表示响应ICMP重定向报文。

禁止响应ICMP路由通告报文

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\PerformRouterDiscove ry REG_DWORD 0x0(默认值为0x2)

“ICMP路由公告”功能可造成他人计算机的网络连接异常,数据被窃听,计算机被用于流量攻击等严重后果。此问题曾导致校园网某些局域网大面积,长时间的网络异常。建议关闭响应ICMP路由通告报文。Windows中默认值为2,表示当DHCP发送路由器发现选项时启用。

不支持IGMP协议

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IGMPLevel REG_DWORD

0x0(默认值为0x2)

Win9x下有个bug,就是用可以用IGMP使别人蓝屏,修改注册表可以修正这个bug。Windows 虽然没这个bug了,但IGMP并不是必要的,因此照样可以去掉。改成0后用route print

将看不到224.0.0.0项了。

禁止死网关监测技术

HKLM\SYSTEM\CurrentControlSet\Services:\Tcpip\ParametersEnableDeadGWDetectREG_DW ORD 0x0(默认值为ox1)

如果你设置了多个网关,那么你的机器在处理多个连接有困难时,就会自动改用备份网关,有时候这并不是一项好主意,建议禁止死网关监测。

修改MAC地址

HKLM\SYSTEM\CurrentControlSet\Control\Class\

找到右窗口的说明为“网卡“的目录,比如说是{4D36E972-E325-11CE-BFC1-08002BE10318}展开之,在其下0000,0001,0002...的分支中找到”DriverDesc“的键值为你网卡的说明,比如说”DriverDesc“的值为”Intel(R) 82559 Fast Ethernet LAN on Motherboard“然后在右窗口新建一字符串值,名字为”Networkaddress“,内容为你想要的MAC值,比如说是”004040404040“然后重起计算机,ipconfig /all查看。

3、文件及文件夹权限设置

(1)用户组及用户的权限:有哪些组?其权限是什么?有哪些用户?分

属哪些组?设置其权限。

(2)新建一个文件夹并设置其访问控制权限。

4、审核日志分析

(1)查找审核日志,显示其详细信息:应用程序日志、安全性日志、系统日志。

(2)分析各种日志所描述的内容,分析警告、信息、错误等的意义。 信息为普通系统信息,警告为暂时可不处理的问题,错误为必须立即处理的问题。

5、使用Microsoft 基准安全分析器MBSA 2.0对系统进行安全评估

Microsoft 基准安全分析器 (MBSA) 可以检查操作系统,还可以扫描计算机上的不安全配置。检查 Windows 服务包和修补程序时,它将 Windows 组件(如 Internet 信息服务 (IIS) 和 COM+)也包括在内。MBSA 使用一个 XML 文件作为现有更新的清单。该 XML 文件包含在存档 Mssecure.cab 中,由 MBSA 在运行扫描时下载,也可以下载到本地计算机上,或通过网络服务器使用。官方下载地址:

(1)MBSA 可在下列网址下载:https://www.doczj.com/doc/a28076280.html,/technet/security/ tools/Tools/mbsaqa.asp

(2)MBSA 的技术白皮书可在下列网址下载:https://www.doczj.com/doc/a28076280.html,/ technet/security/tools/tools/mbsawp.asp

《操作系统安全》实验二

……Linux系统安全设置实验

一、实验目的

1、了解Linux操作系统的安全性

2、熟悉Linux操作系统的安全设置

3、建立Linux操作系统的基本安全框架

二、实验要求

1、根据实验中的安全设置要求,详细观察并记录设置前后系统的变化,给出分析报告。

2、使用RPM对系统的软件进行管理,验证系统内软件的完整性,并分析结果。

3、比较Windows系统的安全设置和Linux系统安全设置的异同。

三、实验内容

1、账户和口令安全

(1)查看和添加账户

在终端下输入命令:useradd ***,建立一个新账户;

cat /etc/shadaw, 查看系统中的账户列表;

(2)添加和更改密码:passwd命令

(3)查看Linux系统中是否有用于检测密码安全的黑客技术语字典及密码检测模块:locate pam_cracklib.so dict|grep crack

操作系统实验报告-中南大学

操作系统原理试验报告 班级: 学号: 姓名:

实验一:CPU调度 一、实验内容 选择一个调度算法,实现处理机调度。 二、实验目的 多道系统中,当就绪进程数大于处理机数时,须按照某种策略决定哪些进程优先占用处理机。本实验模拟实现处理机调度,以加深了解处理机调度的工作。 三、实验题目 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 四、实验要求 PCB内容: 进程名/PID; 要求运行时间(单位时间); 优先权; 状态: PCB指针; 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度 4、最好采用图形界面; 5、可随时增加进程; 6、规定道数,设置后备队列和挂起状态。若内存中进程少于规定道数,可自动从后备 队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能用于将指定挂起进程解挂入就绪队列。 7、每次调度后,显示各进程状态。 实验二:内存管理 一、实验内容 主存储器空间的分配和回收 二、实验目的 帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 三、实验题目 在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。

四、实验要求 1、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目内容:起址、长度、状态(未分/空表目) 2、结合实验一,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,PCB指针} 3、采用最先适应算法分配主存空间; 4、进程完成后,回收主存,并与相邻空闲分区合并 .1、Vo类说明(数据存储结构) 进程控制块PCB的结构: Public class PCB{ //进程控制块PCB,代表一个进程 //进程名,作为进程的标识; private String name; //要求运行时间,假设进程运行的单位时间数; private int time; //赋予进程的优先权,调度时总是选取优先数小的进程先执行; private int priority; //状态,假设有“就绪”状态(ready)、“运行”状态(running)、 //“后备”状态(waiting)、“挂起”状态(handup) private String state; //进程存放在table中的位置 private int start; //进程的大小 private int length; //进程是否进入内存,1为进入,0为未进入 private int isIn; //进程在内存中的起始位置 private int base; //进程的大小 private int limit; //一些get和set方法以及构造器省略… };

操作系统实验报告4

《操作系统》实验报告 实验序号: 4 实验项目名称:进程控制

Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜ 修改后: #include #include int main(VOID) { STARTUPINFO si; PROCESS_INFORMA TION pi; ZeroMemory(&si,sizeof(si)); si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, "c:\\WINDOWS\\system32\\mspaint.exe", NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) { fprintf(stderr,"Creat Process Failed"); return -1; } WaitForSingleObject(pi.hProcess,INFINITE); printf("child Complete"); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } 在“命令提示符”窗口运行CL命令产生可执行程序4-1.exe:C:\ >CL 4-1.cpp

实验任务:写出程序的运行结果。 4.正在运行的进程 (2)、编程二下面给出了一个使用进程和操作系统版本信息应用程序(文件名为4-5.cpp)。它利用进程信息查询的API函数GetProcessVersion()与GetVersionEx()的共同作用。确定运行进程的操作系统版本号。阅读该程序并完成实验任务。 #include #include

中南大学通信电子线路实验报告

中南大学 《通信电子线路》实验报告 学院信息科学与工程学院 题目调制与解调实验 学号 专业班级 姓名 指导教师

实验一振幅调制器 一、实验目的: 1.掌握用集成模拟乘法器实现全载波调幅和抑止载波双边带调幅的方法。 2.研究已调波与调制信号及载波信号的关系。 3.掌握调幅系数测量与计算的方法。 4.通过实验对比全载波调幅和抑止载波双边带调幅的波形。 二、实验内容: 1.调测模拟乘法器MC1496正常工作时的静态值。 2.实现全载波调幅,改变调幅度,观察波形变化并计算调幅度。 3.实现抑止载波的双边带调幅波。 三、基本原理 幅度调制就是载波的振幅(包络)受调制信号的控制作周期性的变化。变化的周期与调制信号周期相同。即振幅变化与调制信号的振幅成正比。通常称高频信号为载波信号。本实验中载波是由晶体振荡产生的10MHZ高频信号。1KHZ的低频信号为调制信号。振幅调制器即为产生调幅信号的装置。 在本实验中采用集成模拟乘法器MC1496来完成调幅作用,图2-1为1496芯片内部电路图,它是一个四象限模拟乘法器的基本电路,电路采用了两组差动对由V1-V4组成,以反极性方式相连接,而且两组差分对的恒流源又组成一对差分电路,即V5与V6,因此恒流源的控制电压可正可负,以此实现了四象限工作。D、V7、V8为差动放大器V5与V6的恒流源。进行调幅时,载波信号加在V1-V4的输入端,即引脚的⑧、⑩之间;调制信号加在差动放大器V5、V6的输入端,即引脚的①、④之间,②、③脚外接1KΩ电位器,以扩大调制信号动态范围,已调制信号取自双差动放大器的两集电极(即引出脚⑹、⑿之间)输出。

图2-1 MC1496内部电路图 用1496集成电路构成的调幅器电路图如图2-2所示,图中VR8用来调节引出脚①、④之间的平衡,VR7用来调节⑤脚的偏置。器件采用双电源供电方式(+12V,-9V),电阻R29、R30、R31、R32、R52为器件提供静态偏置电压,保证器件内部的各个晶体管工作在放大状态。 四、实验结果 1. ZD.OUT波形: 2. TZXH波形:

2017中南大学人工智能实验报告

“人工智能”实验报告 专业: 班级: 学号: 姓名: 2017年4月日

实验一搜索策略 (一)实验内容 1. 熟悉和掌握启发式搜索的定义、估价函数和算法过程;比较不同算法的性能。 2. 修改八数码问题或路径规划问题的源程序,改变其启发函数定义,观察结果的变化,分析原因。 (二)实验思路 1.利用已有程序“search.jar”,利用已有的“简单搜索树”图或自行构建一个图,选择DFS/BFS/Lowest Cost First/Best-First/Heuristic Depth First/A*等不同的搜索策略,观察程序运行中,OPEN表和CLOSED表的变化,观察搜索过程的变化,理解各个算法的原理。 2.任选八数码问题或路径规划问题的源程序,思考程序如何解决该问题,并对其启发函数进行修改,观察结果的变化,并分析原因 (三)程序清单 此处我选择了路径规划问题:由于篇幅原因,只附上启发函数的定义部分。 原启发函数: floatMapSearchNode::GoalDistanceEstimate( MapSearchNode&nodeGoal ) { floatxd = fabs(float(((float)x - (float)nodeGoal.x))); floatyd = fabs(float(((float)y - (float)nodeGoal.y))); return (xd + yd); } 第一次修改后的启发函数: float MapSearchNode::GoalDistanceEstimate( MapSearchNode&nodeGoal ) { float xd = fabs(float(((float)x - (float)nodeGoal.x))); float yd = fabs(float(((float)y - (float)nodeGoal.y))); float d=sqrt(xd*xd+yd*yd); return d; } 第二次修改后的启发函数: float MapSearchNode::GoalDistanceEstimate( MapSearchNode&nodeGoal ) { float xd = fabs(float(((float)x - (float)nodeGoal.x))); float yd = fabs(float(((float)y - (float)nodeGoal.y))); float d=3*sqrt(xd*xd+yd*yd); return d; } 第三次修改后的启发函数: float MapSearchNode::GoalDistanceEstimate( MapSearchNode&nodeGoal ) { float xd = fabs(float(((float)x - (float)nodeGoal.x)));

操作系统实验报告

《操作系统原理》实验报告 实验项目名称:模拟使用银行家算法判断系统的状态 一、实验目的 银行家算法是操作系统中避免死锁的算法,本实验通过对银行家算法的模拟,加强对操作系统中死锁的认识,以及如何寻找到一个安全序列解除死锁。 二、实验环境 1、硬件:笔记本。 2、软件:Windows 7 , Eclipse。 三、实验内容 1.把输入资源初始化,形成资源分配表; 2.设计银行家算法,输入一个进程的资源请求,按银行家算法步骤进行检查; 3.设计安全性算法,检查某时刻系统是否安全; 4.设计显示函数,显示资源分配表,安全分配序列。 四、数据处理与实验结果 1.资源分配表由进程数组,Max,Allocation,Need,Available 5个数组组成; 实验采用数据为下表: 2.系统总体结构,即菜单选项,如下图

实验的流程图。如下图 3.实验过程及结果如下图所示

1.首先输入进程数和资源类型及各进程的最大需求量 2.输入各进程的占有量及目前系统的可用资源数量 3.初始化后,系统资源的需求和分配表 4.判断线程是否安全

5.对线程进行死锁判断 五、实验过程分析 在实验过程中,遇到了不少问题,比如算法无法回滚操作,程序一旦执行,必须直接运行到单个任务结束为止,即使产生了错误,也必须等到该项任务结束才可以去选择别的操作。但总之,实验还是完满的完成了。 六、实验总结 通过实验使我对以前所学过的基础知识加以巩固,也对操作系统中抽象理论知识加以理解,例如使用Java语言来实现银行家算法,在这个过程中更进一步了解了银行家算法,通过清晰字符界面能进行操作。不过不足之处就是界面略显简洁,对于一个没有操作过计算机的人来说,用起来可能还是有些难懂。所以,以后会对界面以及功能进行完善,做到人人都可以看懂的算法。

操作系统实验报告心得体会

操作系统实验报告心得体会 每一次课程设计度让我学到了在平时课堂不可能学到的东西。所以我对每一次课程设计的机会都非常珍惜。不一定我的课程设计能够完成得有多么完美,但是我总是很投入的去研究去学习。所以在这两周的课设中,熬了2个通宵,生物钟也严重错乱了。但是每完成一个任务我都兴奋不已。一开始任务是任务,到后面任务就成了自己的作品了。总体而言我的课设算是达到了老师的基本要求。总结一下有以下体会。 1、网络真的很强大,用在学习上将是一个非常高效的助手。几乎所有的资料都能够在网上找到。从linux虚拟机的安装,到linux的各种基本命令操作,再到gtk的图形函数,最后到文件系统的详细解析。这些都能在网上找到。也因为这样,整个课程设计下来,我浏览的相关网页已经超过了100个(不完全统计)。当然网上的东西很乱很杂,自己要能够学会筛选。 不能决定对或错的,有个很简单的方法就是去尝试。就拿第二个实验来说,编译内核有很多项小操作,这些小操作错了一项就可能会导致编译的失败,而这又是非常要花时间的,我用的虚拟机,编译一次接近3小时。所以要非常的谨慎,尽量少出差错,节省时间。多找个几个参照资料,相互比较,

慢慢研究,最后才能事半功倍。 2、同学间的讨论,这是很重要的。老师毕竟比较忙。对于课程设计最大的讨论伴侣应该是同学了。能和学长学姐讨论当然再好不过了,没有这个机会的话,和自己班上同学讨论也是能够受益匪浅的。大家都在研究同样的问题,讨论起来,更能够把思路理清楚,相互帮助,可以大大提高效率。 3、敢于攻坚,越是难的问题,越是要有挑战的心理。这样就能够达到废寝忘食的境界。当然这也是不提倡熬夜的,毕竟有了精力才能够打持久战。但是做课设一定要有状态,能够在吃饭,睡觉,上厕所都想着要解决的问题,这样你不成功都难。 4、最好在做课设的过程中能够有记录的习惯,这样在写实验报告时能够比较完整的回忆起中间遇到的各种问题。比如当时我遇到我以前从未遇到的段错误的问题,让我都不知道从何下手。在经过大量的资料查阅之后,我对段错误有了一定的了解,并且能够用相应的办法来解决。 在编程中以下几类做法容易导致段错误,基本是是错误地使用指针引起的 1)访问系统数据区,尤其是往系统保护的内存地址写数据,最常见就是给一个指针以0地址 2)内存越界(数组越界,变量类型不一致等) 访问到不属于你的内存区域

操作系统实验报告

操作系统教程实验报告 专业班级 学号 姓名 指导教师

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows “命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) : 步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。 屏蔽i循环:

中南大学系统仿真实验报告

实验一MATLAB 中矩阵与多项式的基本运算 实验任务 1. 了解MATLAB命令窗口和程序文件的调用。 2 ?熟悉如下MATLAB的基本运算: ①矩阵的产生、数据的输入、相关元素的显示; ②矩阵的加法、乘法、左除、右除; ③特殊矩阵:单位矩阵、“ 1 ”矩阵、“0”矩阵、对角阵、随机矩阵的产生和运算; ④多项式的运算:多项式求根、多项式之间的乘除。 基本命令训练 1、>> eye(2) ans = 1 0 0 1 >> eye(4) ans = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 2、>> ones(2) 1 1 ans =

1 1 >> ones(4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 >> ones(2,2) ans = 1 1 1 1 >> ones(2,3) ans = 1 1 1 1 1 1 >> ones(4,3) ans = 1 1 1 1 1 1 1 1 1 1 1 1 3、>> zeros(2) ans =

0 0 0 0 >> zeros(4) ans = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >> zeros(2,2) ans = 0 0 0 0 >> zeros(2,3) ans = 0 0 0 0 0 0 >> zeros(3,2) ans = 0 0 0 0 00 4、随机阵>> rand(2,3) ans = 0.2785 0.9575 0.1576 0.5469 0.9649 0.9706 >> rand(2,3)

中南大学制造系统自动化技术实验报告整理

制造系统自动化技术 实验报告 学院:机电工程学院 班级:机制**** 姓名:张** 学号: *********** 指导教师:李** 时间: 2018-11-12 实验一柔性自动化制造系统运行实验 1.实验目的 (1)通过操作MES终端软件,实现对柔性制造系统的任务下达和控制加工,让学生

了解智能制造的特征及优势。 (2)通过创意性的实验让学生了解自动化系统总体方案的构思。 (3)通过总体方案的构思让学生了解该系统的工作原理,并学会绘制控制系统流程图,掌握物料流、信息流、能量流的流动路径。 (4)通过总体方案的构思让学生掌握各机械零部件、传感器、控制元器件的工作原理及性能。 (5)通过实验系统运行让学生了解运行的可靠性、安全性是采用何种元器件来实现的,促进学生进行深层次的思考和实践。 2.实验内容 (1)仔细观察柔性自动化制造系统的实现,了解柔性自动化制造系统的各个模块,熟悉各个模块的机械结构。 (2)了解各种典型传动机构的组装、工作原理、以及如何实现运动方向和速度的改变; (3)学习多种传感器的工作原理、性能和使用方法; (4)了解典型驱动装置的工作原理、驱动方式和性能; (5)理解柔性制造系统的工作原理,完成柔性制造系统的设计、组装; (6)实现对柔性制造系统的控制与检测,完成工件抓取、传输和加工。

3.实验步骤 (1)柔性制造系统的总体方案设计; (2)进行检测单元的设计; (3)进行控制系统的设计; (4)上下料机构的组装与检测控制; (5)物料传输机构的组装与实现; (6)柔性制造系统各组成模块的连接与控制; (7)柔性制造系统各组成单元的状态与工件状态位置的检测; (8)对机器人手动操作,实现对工件的抓取、传输。 4. 实验报告 ①该柔性自动化制造系统由哪几个主要的部分组成; 主要由:总控室工作站、AGV小车输送物料机构、安川机器人上下料工作站、法那科机器人上下料工作站、ABB机器人组装工作站、视觉检测及传送工作站、激光打标工作站、堆垛机及立体仓储工作站。 ②画出该柔性自动化制造系统的物料传输系统结构简图;

操作系统实验报告

操作系统实验报告 实验名称: 系统的引导 所在班级: 指导老师: 老师 实验日期: 2014年3 月29 日

一、实验目的 ◆熟悉hit-oslab实验环境; ◆建立对操作系统引导过程的深入认识; ◆掌握操作系统的基本开发过程; ◆能对操作系统代码进行简单的控制,揭开操作系统的神秘面纱。 二、实验容 1. 阅读《Linux核完全注释》的第6章引导启动程序,对计算机和Linux 0.11的引导过程进行初步的了解。 2. 按照下面的要求改写0.11的引导程序bootsect.s。 3. 有兴趣同学可以做做进入保护模式前的设置程序setup.s。 4. 修改build.c,以便可以使用make BootImage命令 5. 改写bootsect.s主要完成如下功能: bootsect.s能在屏幕上打印一段提示信息XXX is booting...,其中XXX是你给自己的操作系统起的名字,例如LZJos、Sunix等。 6. 改写setup.s主要完成如下功能: bootsect.s能完成setup.s的载入,并跳转到setup.s开始地址执行。而setup.s 向屏幕输出一行"Now we are in SETUP"。setup.s能获取至少一个基本的硬件参数(如存参数、显卡参数、硬盘参数等),将其存放在存的特定地址,并输出到屏幕上。setup.s不再加载Linux核,保持上述信息显示在屏幕上即可。 三、实验环境

本实验使用的系统是windows系统或者是Linux系统,需要的材料是osexp。 四、实验步骤 1. 修改bootsect.s中的提示信息及相关代码; 到osexp\Linux-0.11\boot目录下会看到图1所示的三个文件夹,使用UtraEdit 打开该文件。将文档中的98行的mov cx,#24修改为mov cx,#80。同时修改文档中的第246行为图2所示的情形。 图1图2 图3 2. 在目录linux-0.11\boot下,分别用命令as86 -0 -a -o bootsect.obootsect.s和 ld86 -0 -s -obootsectbootsect.o编译和bootsect.s,生成bootsect文件; 在\osexp目录下点击MinGW32.bat依此输入下面的命令: cd linux-0.11 cd boot as86 -0 -a -o bootsect.obootsect.s ld86 -0 -s -o bootsectbootsect.o

操作系统安全实验报告

CENTRAL SOUTH UNIVERSITY 操作系统安全实验报告 学生姓名 班级学号 指导教师 设计时间

《操作系统安全》实验一 ……Windows系统安全设置实验 一、实验目的 1、了解Windows操作系统的安全性 2、熟悉Windows操作系统的安全设置 3、熟悉MBSA的使用 二、实验要求 1、根据实验中的安全设置要求,详细观察并记录设置前后系统的变化,给出分析报告。 2、采用MBSA测试系统的安全性,并分析原因。 3、比较Windows系统的安全设置和Linux系统安全设置的异同。 三、实验内容人 1、配置本地安全设置,完成以下内容: (1)账户策略:包括密码策略(最小密码长度、密码最长存留期、密码最短存留期、强制密码历史等)和账户锁定策略(锁定阈值、锁定时间、锁定计数等) A.账户锁定策略: 账户锁定阈值:指用户输入几次错误的密码后将用户账户锁定,默认为0,代表不锁定 账户锁定时间:指当用户账户被锁定后经过多长时间会自动解锁,0表示只有管理员才能受控解锁 复位账户锁定计数器:指用户由于输入密码错误开始计数时,计数器保持的时间,当时间过后,计数器复位为0. B.密码策略

(2)账户和口令的安全设置:检查和删除不必要的账户(User用户、Duplicate User用户、测试用户、共享用户等)、禁用guest账户、禁止枚举帐号、创建两个管理员帐号、创建陷阱用户(用户名为Administrator、权限设置为最低)、不让系统显示上次登录的用户名。 A.创建用户: 控制面板----管理工具----计算机管理-----本地用户和组-----用户---创建用户B.修改用户权限: 控制面板---用户账户---管理其他账户---更改账户类型 C.禁止枚举账号: 禁止原因:枚举账号指某些具有黑客行为的蠕虫病毒可以通过扫描WindowsXP系统的指定端口,然后通过共享会话猜测管理员系统密码,因此需要禁止枚举账号 方法:本地安全设置-“安全设置”-“本地策略”-“安全选项”-双击对匿名连接的额外限制-不允许枚举SAM账号和共享”

中南大学 计算机体系结构实验报告

计算机体系结构课程设计 学院:信息科学与工程学院 专业班级: 指导老师: 学号: 姓名:

目录 实验1 对指令操作码进行霍夫曼编码 (3) 一、实验目的 (3) 二、实验内容 (3) 三、设计思路 (4) 四、关键代码 (4) 五、实验截图 (5) 六、源代码 (5) 实验2 使用LRU 方法更新Cache (8) 一、实验目的 (8) 二、实验内容 (8) 三、设计思路 (9) 四、程序截图 (9) 五、实验代码 (9) 实验总结 (16) 参考文献 (16)

实验1 对指令操作码进行霍夫曼编码一、实验目的 了解和掌握指令编码的基本要求和基本原理 二、实验内容 1. 使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对指令码的长度进行评价。与扩展操作码和等长编码进行比较。 2. 问题描述以及问题分析 举例说明此问题,例如: 下表所示: 对此组指令进行 HUFFMAN 编码正如下图所示: 最后得到的HUFFMAN 编码如下表所示:

最短编码长度为: H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95. 要对指令的操作码进行 HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行 HUFFAM 编码。此过程的难点构造 HUFFMAN 树,进行 HUFFAM 编 码只要对你所生成的 HUFFMAN 树进行中序遍历即可完成编码工作。 三、设计思路 观察上图,不难看出构造 HUFFMAN 树所要做的工作:1、先对各指令操作码的出现概率进行排序,构造一个有序链表。2、再取出两个最小的概率节点相加,生成一个生的节点加入到链表中,同时从两表中删除此两个节点。3、在对链表进行排序,链表是否只有一个节点,是则 HUFFAN 树构造完毕,否则继续做 2 的操作。为此设计一个工作链表(链表的元素时类,此类的功能相当结构。)、HUFFMAN 树节点、HUFFMAN 编码表节点。 四、关键代码 哈夫曼树重点在于如何排列权值大小不同的结点的顺序 private int leafNum; //叶子结点个数 private HaffmanNode[] hnodes; //哈夫曼树的结点数组 public HaffManCode(double[] weight) //构造指定权值集合的哈夫曼树 { int n = weight.length; //n个叶子结点 this.leafNum = n; this.hnodes = new HaffmanNode[2*n-1]; //n个叶子结点的哈夫曼树共有2n-1个结点 for(int i=0; i

算法实验报告

算法分析与设计实验报告 学院:信息科学与工程学院 专业班级: 指导老师: 学号: 姓名:

目录 实验一:递归与分治 (3) 1.实验目的 (3) 2.实验预习内容 (3) 3.实验内容和步骤 (3) 4.实验总结及思考 (5) 实验二:回溯算法 (6) 1.实验目的: (6) 2.实验预习内容: (6) 3. 实验内容和步骤 (6) 4. 实验总结及思考 (9) 实验三:贪心算法和随机算法 (10) 1. 实验目的 (10) 2.实验预习内容 (10) 3.实验内容和步骤 (10) 4. 实验总结及思考 (13)

实验一:递归与分治 1.实验目的 理解递归算法的思想和递归程序的执行过程,并能熟练编写快速排序算法程序。 掌握分治算法的思想,对给定的问题能设计出分治算法予以解决。 2.实验预习内容 递归:递归算法是把问题转化为规模缩小了的同类问题的子问题。然后递归调用函数(或过程)来表示问题的解。 一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数). 分治:分治算法的基本思想是将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。求出子问题的解,就可得到原问题的解。 3.实验内容和步骤 快速排序的基本思想:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 源代码: #include using namespace std; int num; void swap(int &a,int &b) { int temp=a; a=b; b=temp; } void printarray(int *arr) { for (int i=1;i<=num;++i) cout<

操作系统实验报告

操作系统实验报告 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT

许昌学院 《操作系统》实验报告书学号: 姓名:闫金科 班级:14物联网工程 成绩: 2016年02月

实验一Linux的安装与配置 一、实验目的 1.熟悉Linux系统的基本概念,比如Linux发行版、宏内核、微内核等。 2.掌握Linux系统的安装和配置过程,初步掌握Linux系统的启动和退出方 法。 3.熟悉Linux系统的文件系统结构,了解Linux常用文件夹的作用。 二、实验内容 1.从网络上下载VMware软件和两个不同Linux发行版镜像文件。 2.安装VMware虚拟机软件。 3.在VMware中利用第一个镜像文件完成第一个Linux的安装,期间完成网络 信息、用户信息、文件系统和硬盘分区等配置。 4.在VMware中利用第二个镜像文件完成第二个Linux的安装,并通过LILO或 者GRUB解决两个操作系统选择启动的问题。 5.启动Linux系统,打开文件浏览器查看Linux系统的文件结构,并列举出 Linux常用目录的作用。 三、实验过程及结果 1、启动VMware,点击新建Linux虚拟机,如图所示: 2、点击下一步,选择经典型,点击下一步在选择客户机页面选择 Linux,版本选择RedHatEnterpriseLinux5,如图所示: 3、点击下一步创建虚拟机名称以及所要安装的位置,如图所示: 4、点击下一步,磁盘容量填一个合适大小,此处选择默认值大小 10GB,如图所示: 5、点击完成,点击编辑虚拟机设置,选择硬件选项中的CD-ROM (IDE...)选项,在右侧连接中选择“使用ISO镜像(I)”选项,点 击“浏览”,找到Linux的镜像文件,如图所示:

操作系统实验报告

实验报告 实验课程名称:操作系统 实验地点:南主楼七楼机房 2018—2019学年(一)学期 2018年 9月至 2019 年 1 月 专业: 班级: 学号: 姓名: 指导老师:刘一男

实验一 实验项目:分时系统模拟 实验学时:2实验日期: 2018-10-25 成绩: 实验目的利用程序设计语言模拟分时系统中多个进程按时间片轮转调度算法进行进程调度的过程; 假设有五个进程A,B,C,D,E,它们的到达时间及要求服务的时间分别为:进程名 A B C D E 到达时间0 1 2 3 4 服务时间 4 3 4 2 4 时间片大小为1,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:BDACE

(1)修改时间片大小为2,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:ADBCE (2)修改时间片大小为4,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间.

顺序:ABCDE 1、思考 时间片的大小对调度算法产生什么影响?对计算机的性能产生什么影响?答:通过对时间片轮转调度算法中进程最后一次执行时间片分配的优化,提出了一种改进的时间片轮转调度算法,该算法具有更好的实时性,同时减少了任务调度次数和进程切换次数,降低了系统开销,提升了CPU的运行效率,使操作系统的性能得到了一定的提高。 A B C D E 时间片为1 周转时间12 9 14 8 13 3 3 3.5 4 3.25 带权周转 时间 时间片为2 周转时间8 12 13 7 13 2 4 3.25 3.5 3.25 带权周转 时间 时间片为4 周转时间 4 6 9 10 13 1 2 2.25 5 3.25 带权周转 时间

中南大学软件体系结构实验报告-实验1

实验1 UML实验 实验学时: 4 每组人数: 1 实验类型: 3 (1:基础性2:综合性3:设计性4:研究性) 实验要求: 1 (1:必修2:选修3:其它) 实验类别: 3 (1:基础2:专业基础3:专业4:其它) 一、实验目的 1. 学会安装和使用建模工具PowerDesigner,熟练使用PowerDesigner绘制常用的UML 图形,熟悉常用的UML建模符号; 2. 构建用例模型来描述软件需求,包括绘制用例图,撰写用例文档并制作用例检查矩阵; 3. 学习使用状态图描述对象的状态及转换; 4. 学习使用活动图为业务流程建模; 5. 学习使用顺序图描述对象之间的交互; 6. 学习类图的绘制; 7. 学习从系统需求中识别类,并构建相应的面向对象模型; 8. 学习使用PowerDesigner实现正向工程和逆向工程; 9. 学习使用组件图描述每个功能所在的组件位置以及它们之间的关系; 10. 学习使用部署图描述软件中各个组件驻留的硬件位置以及这些硬件之间的交互关系。 二、实验内容 1. 某酒店订房系统描述如下: (1) 顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订; (2) 前台服务员可以利用系统直接在前台预订房间; (3) 不管采用哪种预订方式,都需要在预订时支付相应订金; (4) 前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付; (5) 利用信用卡进行支付时需要和信用卡系统进行通信; (6) 客房部经理可以随时查看客房预订情况和每日收款情况。 绘制该酒店订房系统的用例图。 2. 根据以下场景绘制用例图: 某企业为了方便员工用餐,为企业餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。该系统功能描述如下:

操作系统实验报告

操作系统实验报告 银行家算法 班级:计算机()班 姓名:李君益 学号:(号) 提交日期: 指导老师: 林穗 一、设计题目 加深了解有关资源申请、避免死锁等概念,并体会和了解死锁和避免死锁的具体实施方法。 要求编写和调试一个系统动态分配资源的简单模拟程序,观察死锁产生的条件,并采用银行家算法,有效的防止和避免死锁的发生。 二、设计要求

内容: 编制银行家算法通用程序,并检测思考题中所给状态的安全性。 要求: (1)下列状态是否安全?(三个进程共享个同类资源) 进程已分配资源数最大需求数 (状态) (状态) (2)考虑下列系统状态 分配矩阵最大需求矩阵可用资源矩阵 问系统是否安全?若安全就给出所有的安全序列。若进程请求(),可否立即分配? 三、设计分析 一.关于操作系统的死锁 .死锁的产生 计算机系统中有许多独占资源,他们在任一时刻只能被一个进程使用,如磁带机,绘图仪等独占型外围设备,或进程表,临界区等软件资源。两个进程同时向一台打印机输出将导致一片混乱,两个进程同时进入临界区将导致数据库错误乃至程序崩溃。正因为这些原因,所有操作系统都具有授权一个进程独立访问某一辞源的能力。一个进程需要使用独占型资源必须通过以下的次序: ●申请资源 ●使用资源 ●归还资源 若申请施资源不可用,则申请进程进入等待状态。对于不同的独占资源,进程等待的方式是有差别的,如申请打印机资源、临界区资源时,申请失败将一位这阻塞申请进程;而申请打开文件文件资源时,申请失败将返回一个错误码,由申请进程等待一段时间之后重试。只得指出的是,不同的操作系统对于同一种资源采取的等待方式也是有差异的。 在许多应用中,一个进程需要独占访问多个资源,而操作系统允许多个进程并发执行共享系统资源时,此时可能会出现进程永远被阻塞的现象。这种现象称为“死锁”。 2.死锁的定义 一组进程处于死锁状态是指:如果在一个进程集合中的每个进程都在等待只能由该集合中的其他一个进程才能引发的时间,则称一组进程或系统此时发生了死锁。 .死锁的防止 .死锁产生的条件: ●互斥条件

操作系统安全实验2实验报告

操作系统安全实验2 一、实验目的 1、了解Linux操作系统的安全性 2、熟悉Linux操作系统的安全设置 3、建立Linux操作系统的基本安全框架 二、实验要求 1、根据实验中的安全设置要求,详细观察并记录设置前后系统的变化,给出分析报告。 2、使用RPM对系统的软件进行管理,验证系统内软件的完整性,并分析结果。 3、比较Windows系统的安全设置和Linux系统安全设置的异同。 三、实验内容 1、账户和口令安全 (1)查看和添加账户 在终端下输入命令:useradd ***,建立一个新账户; cat /etc/shadaw, 查看系统中的账户列表; (2)添加和更改密码:passwd命令 (3)查看Linux系统中是否有用于检测密码安全的黑客技术语字典及密码检测模块:locate pam_cracklib.so dict|grep crack

2.账户安全设置 (1)强制用户首次登陆时修改口令,强制每90天更改一次口令,并提前10天提示:chage命令

(2)账户的禁用与恢复:passwd命令,锁定除root之外的不必要的超级用户 (3)建立用户组,设置用户:groupadd命令、groupmod命令、gpasswd命令 (4)设置密码规则:/etc/login.defs文件编辑修改,设置用户的密码最长使用天数、最小密码长度等

(5)为账户和组相关系统文件加上不可更改属性,防止非授权用户获取权限:chattr命令、 (6)删除用户和用户组:userdel命令、groupdel命令

(7)限制su命令提权:/etc/pam.d/su文件,在头部添加命令:auth required /lib/security/pam_wheel.so group=wheel 这样,只有wheel组的用户可以su到root用户 (8)将用户加入到某个组:usermod命令 (9)确认shadow中的空口令帐号:awk命令

中南大学人工智能实验报告

“人工智能”实验报告 专业 班级 学号 姓名

目录 一、实验八自动规划实验群 (3) 二、实验一生产式系统实验群 (6) 三、实验二搜索策略实验群 (7) 四、实验七神经网络 (9) 五、实验心得和体会 (10)

实验八自动规划实验群 姓名班级指导老师日期2011.12 实验目 的 熟悉和掌握自动规划的基本原理,方法和主要技术。 实验原理规划是一种问子题求解技术,它从某个特定的问题状态出发,寻求一系列行为动作,并建立一个操作序列,直到求得目标状态为止。简而言之,规划是一个行动过程的描述。一个总规划可以含有若干个子规划。 实验环 境 转载相 关源文 件 实验环境 转载相关源文件 实现过 程 单步观察实验算法

算法结果分析 观测结果通过规定规则,确定initial state和goal state,使得移动臂按照规则进行移动。分别进行clear holding pickup putdown putdowntable等实现对木块的移动。 实现过程先进行逆向推理选择,找出途径后再进行移动。 学生结论对于不同的规则将会出现不同的移动过程。通过规定不同的动作可实现不通过的移动。

实验一生产式系统实验群 姓名指导老师日期2011.12 实验目的熟悉和掌握产生式系统的运行机制,掌握基 于规则推理的基本方法。 推理方 法 逆向推理 建立规则库建立事实库 该动物是哺乳动物<- 该动物有毛发. 该动物是哺乳动物<- 该动物有奶. 该动物是鸟<- 该动物有羽毛. 该动物是鸟<- 该动物会飞&会下蛋. 该动物是食肉动物<- 该动物吃肉. 该动物是食肉动物<- 该动物有犬齿&有爪&眼盯前方. 该动物是有蹄类动物<- 该动物是哺乳动物&有蹄. 该动物是有蹄类动物<- 该动物是哺乳动物& 是嚼反刍动物. 该动物是金钱豹<- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点. 该动物是虎<- 该动物是哺乳动物&该动物是食肉动物&是黄褐色&身上有黑色条纹. 该动物是长颈鹿<- 该动物是有蹄类动物&有长脖子&有长腿&身上有暗斑点. 该动物是斑马<- 该动物是有蹄类动物&身上有黑色条纹. 该动物是鸵鸟<- 该动物是鸟&有长脖子&有长腿&不会飞&有黑白二色. 该动物是企鹅<- 该动物是鸟&会游泳&不会飞&有黑白二色. 该动物是信天翁<- 该动物是鸟&善飞. %------动物识别系统事实集: %会游泳. %--该动物是企鹅 %不会飞. %有黑白二色. %该动物是鸟. %-------- %--该动物是鸟 %该动物会飞. %会下蛋. %----该动物是金钱豹<- 该动物是哺乳动物&是食肉动物&是黄褐色&身上有暗斑点. %该动物有毛发. %是食肉动物. %是黄褐色. %身上有暗斑点. %----该动物是虎<- 该动物是哺乳动物&该动物是食肉动物&是黄褐色&身上有黑色条纹. %该动物是哺乳动物. %是食肉动物. %是黄褐色. %身上有暗斑点. %----该动物是长颈鹿<- 该动物是有蹄类动物&有长脖子&有长腿&身上有暗斑点. %该动物是有蹄类动物. %有长脖子. %有长腿. %身上有暗斑点. 预测结果假设目标为该动物是金钱豹,则结果为true. 实验过程及结果(注意观测规则的匹配过程和方法) (1)假设这个动物是金钱豹。为了检验这个假设,根据规则, 要求这个动物是哺乳动物&是食肉动物&是黄褐色&身上有暗 斑点. (2)必须检验这个动物是否为哺乳动物。先由规则库中的: 该动物是哺乳动物<- 该动物有毛发.该动物是哺乳动物<- 备注(原因等) 根据逆向推理可以逐步 确定

相关主题
文本预览
相关文档 最新文档