操作系统实验题目

合集下载

实验一-Windows操作系统进行安全配置

实验一-Windows操作系统进行安全配置

实验一-Windows操作系统进行安全配置
实验一
Windows操作系统进行安全配置
一,实验目的
理解操作系统安全对电子商务系统安全的重要性
熟悉操作系统的安全机制,以及Windows的安全策略
掌握对Windows操作系统进行安全配置的基本方法和步骤
二,实验环境
实验设备:PC机及其局域网,具备Internet连接
软件环境:Windows XP
三,实验内容
内容1:账户和密码的安全设置
1.删除不再使用的账户
(1)检查和删除不再使用的账户
“开始” →“控制面板"→“管理工具” →“计算机管理” →“本地用户和组” →“用户” →“删除其中不再使用的账户”
(2)禁用Guest账户
在1.基础上→选“Guest 账户” →“属性” →“Guest属性” →“账户已停用”
2.启用账户策略
(1)密码策略
“控制面板” →“管理工具” →“本地安全策略” →“本地安全设置” →“账户策略” →“密码策略”→设置如下:
设:“密码必须符合复杂性要示”启用
设:“密码长度最小值” 8位
设:“密码最长存留期” 30天
设:“密码最短存留期” 5天
设:“强制密码历史” 3个记住的密码
(2)账户锁定策略
“控制面板” →“管理工具” →“本地安全策略” →“本地安全设置” →“账户策略” →“账户锁定策略”→设置如下:“账记锁定阈值”可抵御“对用户密码的暴力猜测”:设为“3”
“复位账户锁定计数器”被锁定的账户多长时间可被复位“0”:“3分”
“账户锁定时间” 被锁定后的账户,多长时间才能重新使用:“10分”。

操作系统实验题

操作系统实验题

1、在操作系统中,进程与线程的主要区别是什么?A. 进程是资源分配的基本单位,线程是处理器调度的基本单位B. 进程和线程都是资源分配和处理器调度的基本单位C. 线程是资源分配的基本单位,进程是处理器调度的基本单位D. 进程和线程都不涉及资源分配问题(答案:A)2、以下哪种调度算法可能会导致饥饿问题?A. 先来先服务(FCFS)B. 短作业优先(SJF)C. 时间片轮转(Round Robin)D. 优先级调度(非抢占式)(答案:B)3、在操作系统的存储管理中,分段存储管理方式的主要目的是?A. 提高内存利用率B. 实现内存保护C. 方便用户编程D. 提高程序运行速度(答案:C)4、关于死锁,以下哪个说法是正确的?A. 死锁是指多个进程因竞争资源而无限期等待的现象B. 死锁只可能发生在多道批处理系统中C. 死锁发生时,系统中一定存在多个进程同时处于就绪状态D. 预防死锁的方法之一是破坏“请求和保持”条件,即要求进程一次性申请所有所需资源(答案:A,注:同时D也是预防死锁的一种方法,但题目要求选择正确说法,A更直接描述了死锁的定义)5、在操作系统的文件系统中,目录结构的主要作用是?A. 实现文件的按名存取B. 提高文件存储的效率C. 增强文件系统的安全性D. 便于用户对文件进行备份(答案:A)6、下列哪一项不是虚拟内存技术的优点?A. 扩大内存容量B. 提高内存利用率C. 简化内存管理D. 加快程序运行速度(在某些情况下可能因换页开销而减慢)(答案:D)7、在操作系统的设备管理中,缓冲区的设置主要是为了?A. 提高设备利用率B. 缓和CPU与I/O设备之间速度不匹配的矛盾C. 实现设备的即插即用D. 减少I/O操作的次数(答案:B)8、关于操作系统的中断机制,以下哪个说法是错误的?A. 中断是由硬件或软件发出的,用于请求CPU处理的事件B. 中断处理过程中,CPU会暂停当前程序的执行,转而执行中断处理程序C. 中断向量表是存储中断处理程序入口地址的表D. 在所有情况下,中断处理程序的执行优先级都高于当前正在运行的程序(答案:D,注:中断处理程序的优先级通常较高,但并非在所有情况下都绝对高于所有正在运行的程序,特别是在某些实时系统中可能有更复杂的优先级策略)。

操作系统实验二报告-时间片轮转进程调度算法1

操作系统实验二报告-时间片轮转进程调度算法1

操作系统实验报告实验二时间片轮转进程调度算法学号:班级:姓名:【实验题目】: 时间片轮转进程调度算法【实验目的】通过这次实验, 加深对进程概念的理解, 进一步掌握进程状态的转变、进程调度的策略与对系统性能的评价方法。

【实验内容】问题描述:设计程序模拟进程的时间片轮转RR 调度过程。

假设有n 个进程分别在T1, … ,Tn 时刻到达系统, 它们需要的服务时间分别为S1, … ,Sn 。

分别利用不同的时间片大小q, 采用时间片轮转RR 进程调度算法进行调度, 计算每个进程的完成时间, 周转时间和带权周转时间, 并且统计n 个进程的平均周转时间和平均带权周转时间。

程序要求如下:1)进程个数n ;每个进程的到达时间T 1, … ,T n 和服务时间S 1, … ,S n ;输入时间片大小q 。

2)要求时间片轮转法RR 调度进程运行, 计算每个进程的周转时间, 带权周转时间, 并且计算所有进程的平均周转时间, 带权平均周转时间;3)输出: 要求模拟整个调度过程, 输出每个时刻的进程运行状态, 如“时刻3: 进程B开始运行”等等;4)输出:要求输出计算出来的每个进程的周转时间, 带权周转时间, 所有进程的平均周转时间, 带权平均周转时间。

实现提示:用C++语言实现提示:1)程序中进程调度时间变量描述如下:int ArrivalTime[100];int ServiceTime[100];int PServiceTime[100];int FinishTime[100];int WholeTime[100];double WeightWholeTime[100];double AverageWT,AverageWWT;bool Finished[100];➢2)进程调度的实现过程如下:➢变量初始化;➢接收用户输入n, T1, … ,Tn, S1, … ,Sn;时间片大小q;➢按照时间片轮转RR算法进行进程调度, 计算进程的完成时间、周转时间和带权周转时间;➢计算所有进程的平均周转时间和平均带权周转时间;➢按格式输出调度结果。

2008软本操作系统实验试题

2008软本操作系统实验试题

第一套题:文件更名要求:1.在系统中建立一个文件(文件名自定)。

(10分)2.用rename函数编写一个C程序(程序名自定)更改第一点要求中的文件名(文件名自定);在程序中应有如下基本功能:当执行文件时,使用方法出错,请给出提示,如程序名参数1参数2,并退出;如rename函数调用不成功,给出相应的出错信息,否则,给出相应的成功信息。

(60分)3.调试成功。

(20分)4.用相应的命令查看调试结果。

(10分)注:rename函数原型是:itn rename( const char*oldname, const char *newname)第二套题:改变当前目录到指定目录要求:1.在系统中建立一个用建目录命令(目录名自定)。

(10分)2.用chdir和getwd函数编写一个C程序(程序名自定)改变当前目录到指定目录,然后打印出该目录名。

在程序中应有如下基本功能:当执行文件时,使用方法出错,请给出提示,如程序名参数,并退出;如chdir函数调用不成功,给出相应的出错信息,退出。

否则,调用getwd函数,如getwd函数调用不成功,给出相应的出错信息,退出。

否则,打印该目录名。

(60分)3.调试成功。

(20分)4.用相应的命令查看指定目录。

(10分)注:getwd函数原型是:itn getwd (char*pathbuf);它的功能确定调用进程当前工作目录的绝对路经名,复制该路经名所指、由我们自己提供的字符数组中,然后返回指向该数组的指针。

调用成功返回0,否则,返回-1。

chdir函数原型是:itnchdir ( const char*pathname);它的功能是pathname指定的目录成为当前目录,调用成功返回0,否则,返回-1。

该程序需要有头文件:unistd.h 、stdlib.h、limits.h。

第三套题:用fork( )编写一个创建进程的C程序要求:1.用fork( )编写一个创建进程的C程序(程序名自定)。

操作系统试验题

操作系统试验题

操作系统试验题操作系统实验题1.启动计算机,观察屏幕画面变化和提示,思考启动过程中计算机所做的工作。

2.查看系统属性:本机的名字、处理器信息、操作系统信息、内存大小等。

3.在Windows7的计算机管理中:(1)查看本机安装了几块硬盘,每块硬盘有几个分区?(2)创建一个虚拟磁盘(VHD),将这个虚拟磁盘初始化(选择MBR分区形式),并分成两个主分区,对每个分区格式化(选择最大分配单元)。

在其中一个分区中新建一个文本文件,在文本文件中写入一个字符,保存关闭文件,查看文件属性中文件大小和占用空间分别是多少。

4.分析C盘是否需要碎片整理?5.下载一个应用程序,将其安装到本机上,观察开始菜单是否添加了相应项;最后再将该程序卸载(如果本机已经安装了该程序,可先卸载再安装)。

6.打开任一应用程序,利用“任务管理器”,将其关闭。

7.改变屏幕分辨率,观察屏幕显示的变化。

8.删除一种输入法,然后再将其添加上。

9.查找文件calc.exe,并在桌面为其创建快捷方式。

10.观察资源管理器窗口中的“编辑”菜单,验证并记住常用的快捷键。

11.①在磁盘的任一分区目录下创建一个文件夹“Text”,并在该文件夹中创建一个文本文件“TextFile”。

②将“Text”文件夹的属性设为隐藏,并刷新“Text”所在的文件夹,观察是否还能看到“Text”文件夹。

如果不能看到,请将其显示出来,如果还能看到,请将其隐藏再显示出来。

③将文件“T extFile”的扩展名显示出来,如果已经显示了扩展名,请将其隐藏。

12.新建一个库,将D:盘中的一个文件夹包含进去,然后在库中删除文件夹中的文件,观察该文件是否真的删除了。

再删除这个库,观察D:盘中的文件夹是否真的删除了,从而体会库与一般文件夹的区别和作用。

《操作系统》实验二

《操作系统》实验二

《操作系统》实验二一、实验目的本实验旨在加深对操作系统基本概念和原理的理解,通过实际操作,提高对操作系统设计和实现的认知。

通过实验二,我们将重点掌握进程管理、线程调度、内存管理和文件系统的基本原理和实现方法。

二、实验内容1、进程管理a.实现进程创建、撤销、阻塞、唤醒等基本操作。

b.设计一个简单的进程调度算法,如轮转法或优先级调度法。

c.实现进程间的通信机制,如共享内存或消息队列。

2、线程调度a.实现线程的创建、撤销和调度。

b.实现一个简单的线程调度算法,如协同多任务(cooperative multitasking)。

3、内存管理a.设计一个简单的分页内存管理系统。

b.实现内存的分配和回收。

c.实现一个简单的内存保护机制。

4、文件系统a.设计一个简单的文件系统,包括文件的创建、读取、写入和删除。

b.实现文件的存储和检索。

c.实现文件的备份和恢复。

三、实验步骤1、进程管理a.首先,设计一个进程类,包含进程的基本属性(如进程ID、状态、优先级等)和操作方法(如创建、撤销、阻塞、唤醒等)。

b.然后,实现一个进程调度器,根据不同的调度算法对进程进行调度。

可以使用模拟的方法,不需要真实的硬件环境。

c.最后,实现进程间的通信机制,可以通过模拟共享内存或消息队列来实现。

2、线程调度a.首先,设计一个线程类,包含线程的基本属性(如线程ID、状态等)和操作方法(如创建、撤销等)。

b.然后,实现一个线程调度器,根据不同的调度算法对线程进行调度。

同样可以使用模拟的方法。

3、内存管理a.首先,设计一个内存页框类,包含页框的基本属性(如页框号、状态等)和操作方法(如分配、回收等)。

b.然后,实现一个内存管理器,根据不同的内存保护机制对内存进行保护。

可以使用模拟的方法。

4、文件系统a.首先,设计一个文件类,包含文件的基本属性(如文件名、大小等)和操作方法(如创建、读取、写入、删除等)。

b.然后,实现一个文件系统管理器,包括文件的存储和检索功能。

操作系统实验及答案

操作系统实验及答案
语句可用来产生a[0]与a[1]中的随机数。
实验 5 文件系统设计
1、实验目的 通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。
2、实验内容 为linux系统设计一个简单的二级文件系统。要求做到以下几点: (1)可以实现下列几条命令(至少 4 条);
先vi 命令是打开 vi 编辑器。后面的 filename.c 是用户即将编辑的 c 文件名字,注意扩展名字是. c; 当然,vi 编辑器功能很强,可以用它来编辑其它格式的文件,比如汇编文件,其扩展名字是.s;也 可以直接用 vi 打开一个新的未命名的文件,当保存的时候再给它命名,只是这样做不很方便。 2. 最基本的命令 I :当进入刚打开的文件时,不能写入信息,这时按一下键盘上的 I 键(insert),插 入的意思,就可以进入编辑模式了。如下图所示:
4
②在上面的程序中增加语句signal (SIGNAL, SIG-IGN) 和signal (SIGQUIT, SIG-IGN), 观察执行结 果,并分析原因。
(4)进程的管道通信 编制一段程序,实现进程的管理通信。 使用系统调用pipe()建立一条管道线;两个子进程P1 和P2 分别向管道中写一句话: Child 1 is sending a message! Child 2 is sending a message! 而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接收子进程P1 发来的消息,然后再接收子进程P2 发来的消息。 4、思考 (1)系统是怎样创建进程的? (2)可执行文件加载时进行了哪些处理? (3)当首次调用新创建进程时,其入口在哪里? (4)进程通信有什么特点?
1
mkdir 目录名 ; mkdir /home/s2001/newdir 7.删除目录:rmdir; 8.复制文件 cp: 如 cp 文件名 1 文件名 2 9.移动文件或目录: mv 10.删除文件 rm 11. 显示文件内容:more (分页显示); 12. 显示文件:cat 文件名 建立文件:cat >文件名,ctrl+d 结束输入 使用编辑器 vi 编辑文件 1. 进入 linux 的文本模式之后,在命令行键入 vi filename.c 然后回车。下面作一些简单的解释:首

linux操作系统实验题目

linux操作系统实验题目
9.用mv命令,把large移到memos下
[解答]mv large memos
10.显示一个文件的后五行
[解答]tail –n 5 large
11.显示一个文件的前五行
[解答]head –n 5 large
12.把一个文件的最后30个字符存到另一个文件中
[解答]tail –c 30 large>>myfile
b、这只是gcc最最基本的用法。
2.调试下面c语言程序,并在实验报告中说明该程序的功能。
#i nclude <stdio.h>
main() {
int n,a[200],carry,temp,i,j,digit = 1;
printf("Please input n:");
scanf("%d",&n);
1用linux启动光盘启动计算机2选择安装语言鼠标键盘等3选择安装类型服务器工作站自定升级4为磁盘划分linux分区与swap分区5选择引导装载程序与记录引导程序的位置6依次配置网络防火墙语言及时区7配置帐号与密码8选择合适的软件包9进行图形界面配置10安装软件包11创建引导盘12进行x窗口设置13安装完成
⑴用静态数组或二维数组形式定义命令保留字表和shell命令字表。静态数组形式如下:static char * cst [ ]="dir"…"end";static char * scwt [ ]="ls —l"…"exit";
⑵输入命令字gets(string);
⑶分离命令字strcspn();strncpy()
} }
printf("Result is:\n%d ! = ",n);
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

操作系统实验
上机准备:
➢熟悉Cygwin环境
➢编译源程序使用gcc 源程序名–o 目标文件名(缺省为
a.out)。

➢学习Linux(Unix)的常用命令。

➢学习vi 编辑器的使用。

➢C语言语法
1 进程管理
1.1 实验目的
加深对于进程并发执行概念的理解。

实践并发进程的创建和控制方法。

观察和体验进程的动态特性。

进一步理解进程生命期期间创建、变换、撤销状态变换的过程。

掌握进程控制的方法,了解父子进程间的控制和协作关系。

练习Linux系统中进程创建与控制有关的系统调用的编程和调试技术。

1.2 实验说明
1)与进程创建、执行有关的系统调用说明
进程可以通过系统调用fork()创建子进程并和其子进程并发执行.子进程初始的执行映像是父进程的一个复本.子进程可以通过exec()系统调用族装入一个新的执行程序。

父进程可以使用wait()或waitpid()系统调用等待子进程的结束并负责收集和清理子进程的退出状态。

fork()系统调用语法:
#include <unistd.h>
pid_t fork(void);
fork成功创建子进程后将返回子进程的进程号,不成功会返回-1. exec 系统调用有一组6个函数,其中示例实验中引用了execve 系统调用语法:
#include <unistd.h>
int execve(const char *path, const char *argv[], const char * envp[]); path 要装入的新的执行文件的绝对路径名字符串.
argv[] 要传递给新执行程序的完整的命令参数列表(可以为空).
envp[] 要传递给新执行程序的完整的环境变量参数列表(可以为空). Exec 执行成功后将用一个新的程序代替原进程,但进程号不变,它绝不会再返回到调用进程了。

如果exec 调用失败,它会返回-1。

getpid()---获取进程的pid
● 每个进程都执行自己独立的程序,打印自己的pid ,每个父进程打印其子进程的pid;
● 每个进程都执行自己独立的程序,打印自己的pid ,父进程打印其子进程的pid;
● 编写一个命令处理程序,能处理max(m,n), min(m,n)和 average(m,n,l)这几个命令。

(使用exec 函数族)
2 Winsock网络通信(Windows环境)
2.1 实验目的
通过Windows环境中管道通信机制的实验,加深对于管道通信概念的理解,观察和体验并发进程间的通信和协作的效果,练习利用无名管道进行进程通信的编程和调试技术。

2.2 实验说明
服务器端至少能够支持一个客户,客户端和服务器端能够互相发送/接收信息。

例1:简单的回显程序,即客户端输入可以被服务器端回送。

例2:两个人的聊天程序。

相关API函数介绍
•WSAStartup:指明Windows Sockets API的版本号及获得特定Windows Sockets实现的细节
•WSAGetLastError:发生错误后,调用会返回错误代码
•Bind:将指定的套接字与已知地址绑定到一起
•Listen:进入等待连接状态
•Accept:接受用户连接
•Connect:进行连接
•Closesocket:释放该套接字
•Send:在已建立的连接上发送数据
•Recv:在已建立的连接上接收数据
3进程同步实验
3.1 实验目的
加深对并发协作进程同步与互斥概念的理解,观察和体验并发进程同步与互斥操作的效果,分析与研究经典进程同步与互斥问题的实际解决方案。

了解Linux系统中IPC进程同步工具的用法,练习并发协作进程的同步与互斥操作的编程与调试技术。

3.2 实验说明
模拟多个生产/消费者在有界缓冲上正确的操作。

它利用N个字节的共享内存作为有界循环缓冲区,利用写一字符模拟放一个产品,利用读一字符模拟消费一个产品。

当缓冲区空时消费者应阻塞睡眠,而当缓冲区满时生产者应当阻塞睡眠。

一旦缓冲区中有空单元,生产者进程就向空单元中入写字符,并报告写的内容和位置。

一旦缓冲区中有未读过的字符,消费者进程就从该单元中读出字符,并报告读取位置。

生产者不能向同一单元中连续写两次以上相同的字符,消费者也不能从同一单元中连续读两次以上相同的字符。

4 存储管理上机作业
4.1 实验目的
加深对于存储管理的了解,掌握虚拟存储器的实现原理;观察和了解重要的页面置换算法和置换过程。

练习模拟算法的编程技巧,锻炼分析试验数据的能力。

4.2 实验说明
1. 示例实验程序中模拟两种置换算法:LRU算法和FIFO算法。

2. 能对两种算法给定任意序列不同的页面引用串和任意页面实内存数目的组合测试,显示页置换的过程。

3. 能统计和报告不同置换算法情况下依次淘汰的页号、缺页次数(页错误数)和缺页率。

比较两种置换算法在给定条件下的优劣。

5 磁盘移臂调度算法实验
5.1 实验目的
加深对于操作系统设备管理技术的了解,体验磁盘移臂调度算法的重要性;掌握几种重要的磁盘移臂调度算法,练习模拟算法的编程技巧,锻炼研究分析试验数据的能力。

5.2 实验说明
1. 示例实验程序中模拟两种磁盘移臂调度算法:SSTF算法和SCAN 算法
2. 能对两种算法给定任意序列不同的磁盘请求序列,显示响应磁盘请求的过程。

3. 能统计和报告不同算法情况下响应请求的顺序、移臂的总量。

比较两种算法在给定条件下的优劣。

相关文档
最新文档