操作系统的启动实验报告
- 格式:doc
- 大小:189.00 KB
- 文档页数:6
windows的实验报告(完整版)实验标题:Windows的实验报告一、实验目的本实验旨在深入了解Windows操作系统的基本原理和功能,并掌握Windows操作系统的安装、配置和使用方法。
二、实验内容1. Windows操作系统的安装通过制作启动盘或使用光盘安装,选择适当的版本和安装选项进行Windows操作系统的安装。
2. Windows操作系统的配置进行系统设置,包括语言和区域设定、时区设定、键盘和鼠标设置等。
3. Windows操作系统的使用掌握Windows操作系统的基本操作,包括桌面管理、文件和文件夹管理、应用程序的安装和卸载、系统设置等。
4. Windows操作系统的网络配置了解并设置Windows操作系统的网络连接,包括有线网络和无线网络的配置。
三、实验步骤1. Windows操作系统的安装按照安装引导界面的指示,选择合适的选项完成安装过程。
注意选择适配的驱动程序并进行相应设置。
2. Windows操作系统的配置在系统设置中,选择适当的语言和区域,设定正确的时区。
根据个人需求,进行键盘和鼠标相关设置。
3. Windows操作系统的使用3.1 桌面管理:了解和使用桌面的基本布局,包括桌面图标的添加、删除、移动等操作。
3.2 文件和文件夹管理:学习使用资源管理器对文件和文件夹进行管理,包括创建、复制、粘贴、删除等操作。
3.3 应用程序的安装和卸载:了解如何通过Windows商店或第三方应用程序进行安装,并学会使用控制面板进行软件的卸载。
3.4 系统设置:掌握系统设置的方法,包括背景壁纸的更换、屏幕分辨率的调整、电源管理等。
4. Windows操作系统的网络配置4.1 有线网络的配置:了解如何通过网线连接计算机和局域网以及设置IP地址、子网掩码等网络参数。
4.2 无线网络的配置:学习如何连接无线网络并进行密码设置,了解无线网络的高级配置选项。
四、实验结果经过以上实验步骤的操作,成功完成了Windows操作系统的安装、配置和使用。
操作系统实验实验报告一、实验目的操作系统是计算机系统中最为关键的核心软件,它管理着计算机的硬件资源和软件资源,为用户提供了一个方便、高效、稳定的工作环境。
本次操作系统实验的目的在于通过实际操作和实践,深入理解操作系统的基本原理和核心概念,掌握操作系统的基本功能和操作方法,提高对操作系统的认识和应用能力。
二、实验环境本次实验使用的操作系统为 Windows 10 专业版,开发工具为Visual Studio 2019,编程语言为 C 和 C++。
实验硬件环境为一台配备Intel Core i7 处理器、16GB 内存、512GB SSD 硬盘的个人计算机。
三、实验内容(一)进程管理实验1、进程创建与终止通过编程实现创建新的进程,并在完成任务后终止进程。
在实验中,我们使用了 Windows API 函数 CreateProcess 和 TerminateProcess 来完成进程的创建和终止操作。
通过观察进程的创建和终止过程,深入理解了进程的生命周期和状态转换。
2、进程同步与互斥为了实现进程之间的同步与互斥,我们使用了信号量、互斥量等同步对象。
通过编写多线程程序,模拟了多个进程对共享资源的访问,实现了对共享资源的互斥访问和同步操作。
在实验中,我们深刻体会到了进程同步与互斥的重要性,以及不正确的同步操作可能导致的死锁等问题。
(二)内存管理实验1、内存分配与释放使用 Windows API 函数 VirtualAlloc 和 VirtualFree 进行内存的分配和释放操作。
通过实验,了解了内存分配的不同方式(如堆分配、栈分配等)以及内存释放的时机和方法,掌握了内存管理的基本原理和操作技巧。
2、内存分页与分段通过编程模拟内存的分页和分段管理机制,了解了内存分页和分段的基本原理和实现方法。
在实验中,我们实现了简单的内存分页和分段算法,对内存的地址转换和页面置换等过程有了更深入的理解。
(三)文件系统实验1、文件操作使用 Windows API 函数 CreateFile、ReadFile、WriteFile 等进行文件的创建、读取和写入操作。
操作系统实验二实验报告一、实验目的本次操作系统实验二的主要目的是深入理解和掌握进程管理的相关概念和技术,包括进程的创建、执行、同步和通信。
通过实际编程和实验操作,提高对操作系统原理的认识,培养解决实际问题的能力。
二、实验环境本次实验使用的操作系统为 Windows 10,编程环境为 Visual Studio 2019。
三、实验内容及步骤(一)进程创建实验1、首先,创建一个新的 C++项目。
2、在项目中,使用 Windows API 函数`CreateProcess`来创建一个新的进程。
3、为新进程指定可执行文件的路径、命令行参数、进程属性等。
4、编写代码来等待新进程的结束,并获取其退出代码。
(二)进程同步实验1、设计一个生产者消费者问题的模型。
2、使用信号量来实现生产者和消费者进程之间的同步。
3、生产者进程不断生成数据并放入共享缓冲区,当缓冲区已满时等待。
4、消费者进程从共享缓冲区中取出数据进行处理,当缓冲区为空时等待。
(三)进程通信实验1、选择使用管道来实现进程之间的通信。
2、创建一个匿名管道,父进程和子进程分别读写管道的两端。
3、父进程向管道写入数据,子进程从管道读取数据并进行处理。
四、实验结果及分析(一)进程创建实验结果成功创建了新的进程,并能够获取到其退出代码。
通过观察进程的创建和执行过程,加深了对进程概念的理解。
(二)进程同步实验结果通过使用信号量,生产者和消费者进程能够正确地进行同步,避免了缓冲区的溢出和数据的丢失。
分析结果表明,信号量机制有效地解决了进程之间的资源竞争和协调问题。
(三)进程通信实验结果通过管道实现了父进程和子进程之间的数据通信。
数据能够准确地在进程之间传递,验证了管道通信的有效性。
五、遇到的问题及解决方法(一)在进程创建实验中,遇到了参数设置不正确导致进程创建失败的问题。
通过仔细查阅文档和调试,最终正确设置了参数,成功创建了进程。
(二)在进程同步实验中,出现了信号量使用不当导致死锁的情况。
操作系统教程实验指导书实验一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中可执行文件在核心态运行和用户态运行的时间。
篇一:操作系统实验报告完全版《计算机操作系统》实验报告班级:姓名:学号:实验一进程控制与描述一、实验目的通过对windows 2000编程,进一步熟悉操作系统的基本概念,较好地理解windows 2000的结构。
通过创建进程、观察正在运行的进程和终止进程的程序设计和调试操作,进一步熟悉操作系统的进程概念,理解windows 2000中进程的“一生”。
二、实验环境硬件环境:计算机一台,局域网环境;软件环境:windows 2000 professional、visual c++6.0企业版。
三、实验内容和步骤第一部分:程序1-1windows 2000 的gui 应用程序windows 2000 professional下的gui应用程序,使用visual c++编译器创建一个gui应用程序,代码中包括了winmain()方法,该方法gui类型的应用程序的标准入口点。
:: messagebox( null, “hello, windows 2000” , “greetings”,mb_ok) ;/* hinstance */ , /* hprevinstance */, /* lpcmdline */, /* ncmdshow */ )return(0) ; }在程序1-1的gui应用程序中,首先需要windows.h头文件,以便获得传送给winmain() 和messagebox() api函数的数据类型定义。
接着的pragma指令指示编译器/连接器找到user32.lib库文件并将其与产生的exe文件连接起来。
这样就可以运行简单的命令行命令cl msgbox.cpp来创建这一应用程序,如果没有pragma指令,则messagebox() api函数就成为未定义的了。
这一指令是visual studio c++ 编译器特有的。
接下来是winmain() 方法。
其中有四个由实际的低级入口点传递来的参数。
实验报告实验课程: 计算机操作系统学生姓名:XXX学号:XXXX专业班级:软件2014年12月25日目录实验一熟悉Windows XP中的进程和线程 (3)实验二进程调度 (7)实验三死锁避免—银行家算法的实现 (16)实验四存储管理 (22)实验一熟悉Windows XP中的进程和线程一、实验名称熟悉Windows XP中的进程和线程二、实验目的1、熟悉Windows中任务管理器的使用。
2、通过任务管理器识别操作系统中的进程和线程的相关信息。
3、掌握利用spy++.exe来察看Windows中各个任务的更详细信息。
三、实验结果分析1、启动操作系统自带的任务管理器:方法:直接按组合键Ctrl+Alt+Del,或者是在点击任务条上的“开始”“运行”,并输入“taskmgr.exe”。
2、调整任务管理器的“查看”中的相关设置,显示关于进程的以下各项信息,并完成下表:表一:统计进程的各项主要信息3、启动办公软件“Word”,在任务管理器中找到该软件的登记,并将其结束掉。
再从任务管理器中分别找到下列程序:winlogon.exe、lsass.exe、csrss.exe、smss.exe,试着结束它们,观察到的反应是任务管理器无法结束进程,原因是该系统是系统进程。
4、在任务管理器中找到进程“explorer.exe”,将之结束掉,并将桌面上你打开的所有窗口最小化,看看你的计算机系统起来什么样的变化桌面上图标菜单都消失了、得到的结论 explorer.exe是管理桌面图标的文件(说出explorer.exe进程的作用)。
5、运行“spy++.exe”应用软件,点击按钮“”,切换到进程显示栏上,查看进程“explorer.exe”的各项信息,并填写下表:进程:explorer.exe 中的各个线程6、注意某些线程前有“+”,如图所示:,说明二者之间的差异前有“+”其器线程下有窗口。
四、心得体会通过本次实验,我了解到了windows系统中进程的管理与操作,我了解了如何切出任务管理器,任务管理器应用与其他与进程相关的知识,明白了有些系统程序不能够关闭,系统中的进程与线程虽然很多,但是其中有许多关联,只要弄清楚其中的关联那么就能够运用好进程与线程,达到我们的目的。
标题:大一计算机Windows实验报告引言:本实验旨在帮助大一计算机专业的学生熟悉Windows操作系统的基本功能和操作方法,为日后的学习和工作打下坚实的基础。
通过实际操作,我们能够更好地理解Windows操作系统的特点和优势,并学会使用各种常见的应用程序。
实验环境:本实验使用的硬件为一台配置较高的计算机,操作系统为Windows 10,并且安装了Microsoft Office套件以及其他必要的工具软件。
实验步骤:1.首先,我们启动计算机并登录到Windows操作系统。
2.接下来,我们熟悉桌面界面和任务栏的布局,了解如何打开和关闭应用程序。
3.我们学会使用Windows资源管理器,浏览计算机文件和文件夹的层次结构,并掌握复制、剪切和粘贴文件的方法。
4.然后,我们深入学习Windows操作系统的设置选项,包括个性化设置、网络连接设置和安全设置等。
5.我们尝试使用Windows自带的文本编辑器编写简单的文档,并保存到指定位置。
6.进一步,我们学习如何使用Microsoft Office中的Word处理程序创建和格式化文档。
7.在Microsoft Excel中,我们探索如何创建表格、进行基本的数据处理和生成图表。
8.最后,我们使用Windows自带的邮件应用程序设置邮箱,并发送和接收电子邮件。
实验结果:通过本次实验,我成功地掌握了Windows操作系统的基本功能和操作方法。
我熟悉了桌面界面、任务栏布局,学会了打开和关闭应用程序。
我能够轻松浏览计算机文件和文件夹,并使用复制、剪切和粘贴功能进行文件操作。
此外,我还学会了个性化设置、网络连接设置和安全设置等重要选项。
在Microsoft Office套件中,我能够熟练地使用Word处理程序编写和格式化文档,以及在Excel 中创建表格、进行数据处理和生成图表。
最后,我成功地设置了邮箱,并能够发送和接收电子邮件。
分析与讨论:在实验过程中,我遇到了一些小问题,例如文件操作时出现了拷贝错误和命名错误。
计算机操作系统课程实验报告专业信息管理与信息系统班级 1203601学号 120360117姓名乐云指导教师周学权计算机操作系统课程实验报告专业信息管理与信息系统班级 1203601学号 120360114姓名郭鑫指导教师周学权操作系统实验实验1 使用虚拟机安装系统 4学时【实验目的】1.了解虚拟机软件的使用。
2.了解使用虚拟机安装Windows及Ubuntu操作系统。
【实验内容】1. 安装虚拟机软件VirtualBox。
2. 配置VirtualBox环境安装WindowsXP,并在虚拟机中启动windowsXP。
3. 配置VirtualBox环境安装Ubuntu 10.10,并在虚拟机中启动Ubuntu。
【实验环境】VirtualBox4.0Windows XPUbuntu 8.04【实验过程】一、创建虚拟机首先运行VirtualBox,单击左上角的“新建”。
单击下一步。
出现如下图的界面,在名称后输入自己起的名字,如test选择自己想要安装的系统类型和版本,本次试验是安装windows xp系统设置完成后,单击下一步。
接下来是设置虚拟机的内存大小,本次实验操作的计算机内存为4GB,所以我选择分配给我的虚拟机的内存为512MB,然后单击下一步。
接着创建虚拟硬盘,选择创建新的虚拟硬盘,单击下一步。
选择虚拟硬盘的类型,默认选择了VDI类型,单击下一步。
接下来选择为动态扩展类型,因为计算机的存储空间不大。
单击下一步。
动态扩展:如果你为你的虚拟磁盘分配的是10G空间,虚拟磁盘占用真实磁盘空间的范围就为0~10G。
固定大小:如果你为你的虚拟磁盘分配的是10G空间,虚拟磁盘占用真实磁盘空间永远不是10G,不管虚拟磁盘空间是否被全部使用。
选择虚拟机在本地磁盘中的位置和大小,单击下一步。
确认虚拟机的详细情况,点击下一步。
这时我们已经成功的创建了一个虚拟机了,接下来我们要开始配置这个虚拟机安装操作系统选择刚才创建的虚拟机,然后单击上方的“开始”弹出了首次运行向导,单击下一步。
一、实验目的1. 掌握操作系统安装的基本方法。
2. 熟悉操作系统安装过程中的注意事项。
3. 提高动手操作能力,为以后使用操作系统打下基础。
二、实验环境1. 硬件环境:- CPU:Intel Core i5- 内存:8GB- 硬盘:500GB- 显卡:NVIDIA GeForce GTX 1050- 主板:华硕PRIME H310M-E2. 软件环境:- 操作系统:Windows 10- 安装工具:Windows 10安装镜像三、实验步骤1. 准备安装镜像- 将Windows 10安装镜像烧录到U盘或光盘上。
2. 设置BIOS启动顺序- 进入主板BIOS设置界面,将U盘或光盘设置为第一启动设备。
3. 启动计算机- 重启计算机,从U盘或光盘启动。
4. 开始安装操作系统- 进入Windows 10安装界面,点击“现在安装”按钮。
5. 选择安装类型- 选择“自定义:仅安装Windows(高级)”选项。
6. 选择安装磁盘- 在“驱动器选项”下,选择要安装Windows的磁盘分区,点击“新建”按钮创建新的分区,然后将所有磁盘空间分配给新分区。
7. 格式化磁盘- 在弹出的窗口中,选择“将磁盘格式化为NTFS文件系统”,点击“下一步”按钮。
8. 安装操作系统- 等待操作系统安装完成,期间会自动重启计算机。
9. 设置账户信息- 在安装完成后,根据提示设置用户名、密码等信息。
10. 安装驱动程序- 根据需要安装显卡、网卡等驱动程序。
11. 安装常用软件- 安装Office、QQ、浏览器等常用软件。
四、实验结果与分析1. 实验结果- 成功安装Windows 10操作系统,并完成了基本配置。
2. 实验分析- 本次实验中,按照步骤顺利完成操作系统安装,但在安装过程中遇到了以下问题:(1)在设置BIOS启动顺序时,需要根据主板型号进行设置,否则无法从U 盘或光盘启动。
(2)在格式化磁盘时,需要注意选择合适的文件系统,以免影响系统性能。
计算机实验报告(2)操作系统部分一、基本要求和内容1.了解操作系统的基本功能.2.认识WINDOWS桌面的各部分组成,掌握基本的桌面操作.3.掌握各种基本操作对象的操作方法.4.学会使用WINDOWS帮助.5.了解基本的DOS命令和基本的命令行操作方法.6.熟练掌握文件操作方法.7.掌握对图标的操作方法(移动/拖曳/单击/双击/右击等等).8.熟悉资源管理器窗口和”我的电脑”(“计算机”)窗口.9.掌握启动控制面板的方法,了解控制面板的主要功能,掌握使用控制面板对软硬件进行设置的方法。
10.掌握“运行”对话框的使用方法。
11.了解“任务管理器”的简单使用方法。
12.熟悉“画图”“记事本”“计算器”“写字板”等常用应用程序。
13.开始POWERPOINT的基本使用.二、通过上机实验解决下列问题1. CTRL+ALT+DEL 组合键的功能是:打开【任务管理器】窗口2.全角和半角的区别是:半角是一个字符,全角是两个字符3. CTRL+A组合键的功能是:全部选中CTRL+C组合键的功能是:复制CTRL+V组合键的功能是:粘贴CTRL+X组合键的功能是:剪切CTRL+Z组合键的功能是: 撤销ALT+PRINTSCREEN组合键的功能是:复制当前窗口、对话框或其他对象到剪贴板中任务栏隐藏时通过什么组合键可以看到任务栏:Ctrl+Alt+Del进行窗口切换的组合键是:ALT+Tab4.“画图”应用程序默认保存文件类型是:*.png“记事本”应用程序默认保存文件类型是: *.txt.DOC是什么文件类型Word文档.EXE是什么文件类型可执行文件(程序文件)5.鼠标的基本操作方法包括:指向、单击、双击和拖动鼠标指针附近有漏沙钟表示当前的状态是: 沙漏是等待,因为程序先是从硬盘上读取,然后再到内存,芯片在其期间进行运算,再没真正的打开程序时,系统认为它没正真的启动6.资源管理器左下角窗格(即”文件夹”窗口)显示的是:系统中的所有资源以分层树型的结构显示出来7.一般情况下,对文件进行重命名时,不应该修改文件的扩展名,因为: 如果修改了后缀名则会导致文件属性更改,文件无法打开8.文件的属性主要包括哪些:“只读”、“存档”、“隐藏”9.选择多个连续的文件可以采用哪些方法:使用鼠标先选定第一个文件或文件夹,然后按住Shift键,用鼠标单击最后一个文件或文件夹,这样在第一个对象和最后一个对象之间的所有文件或文件夹将全部被选中,包括第一个和最后一个文件或文件夹。
《操作系统》实验报告实验序号:01 实验项目名称:操作系统环境学号1107xxx 姓名xxx 专业、班级软件工程1103 实验地点计—502 指导教师徐冬时间2013.9.23 实验目的1) 了解和学习Windows系统管理工具及其使用;2) 熟悉Windows系统工具的内容和应用;由此,进一步熟悉Windows操作系统的应用环境。
工具/准备工作在开始本实验之前,请回顾教科书的相关内容。
需要准备一台运行Windows 操作系统的计算机。
实验内容与步骤1. 计算机管理2. 事件查看器3. 性能监视4. 服务5. 数据库 (ODBC)为了帮助用户管理和监视系统,Windows提供了多种系统管理工具,其中最主要的有计算机管理、事件查看器和性能监视等。
如图2所示。
图2 基于虚拟机的操作系统计算环境管理步骤1:登录进入Windows。
步骤2:在“开始”菜单中单击“设置”-“控制面板”命令,双击“管理工具”图标。
在本地计算机“管理工具”组中,有哪些系统管理工具,基本功能是什么:1) Internet 信息服务;管理IIS,Internet 和Intranet站点的WEB服务器。
2) Server Extensions 管理器;Server Extensions管理器。
3)计算机管理;管理磁盘以及使用其他系统工具来管理本地或远程的计算机。
4)性能;显示系统性能图表以及配置数据日志和警报。
5)本地安全策略;查看和修改本地安全策略,如用户权限和审核策略。
6)事件查看器;显示来自于Windows和其他程序的监视与排错消息。
7)组件服务;配置和管理COM+应用程序。
1. 计算机管理使用“计算机管理”可通过一个合并的桌面工具来管理本地或远程计算机,它将几个Windows管理实用程序合并到一个控制台目录树中,使管理员可以轻松地访问特定计算机的管理属性和工具。
步骤3:在“管理工具”窗口中,双击“计算机管理”图标。
“计算机管理”使用的窗口与“Windows资源管理器”相似。
《操作系统》课程实验报告一、实验目的本次《操作系统》课程实验的主要目的是通过实际操作和观察,深入理解操作系统的工作原理、进程管理、内存管理、文件系统等核心概念,并掌握相关的操作技能和分析方法。
二、实验环境1、操作系统:Windows 10 专业版2、开发工具:Visual Studio Code3、编程语言:C/C++三、实验内容(一)进程管理实验1、进程创建与终止通过编程实现创建新进程,并观察进程的创建过程和资源分配情况。
同时,实现进程的正常终止和异常终止,并分析其对系统的影响。
2、进程同步与互斥使用信号量、互斥锁等机制实现进程之间的同步与互斥。
通过模拟多个进程对共享资源的访问,观察并解决可能出现的竞争条件和死锁问题。
(二)内存管理实验1、内存分配与回收实现不同的内存分配算法,如首次适应算法、最佳适应算法和最坏适应算法。
观察在不同的内存请求序列下,内存的分配和回收情况,并分析算法的性能和优缺点。
2、虚拟内存管理研究虚拟内存的工作原理,通过设置页面大小、页表结构等参数,观察页面的换入换出过程,以及对系统性能的影响。
(三)文件系统实验1、文件操作实现文件的创建、打开、读取、写入、关闭等基本操作。
观察文件在磁盘上的存储方式和文件系统的目录结构。
2、文件系统性能优化研究文件系统的缓存机制、磁盘调度算法等,通过对大量文件的读写操作,评估不同优化策略对文件系统性能的提升效果。
四、实验步骤(一)进程管理实验步骤1、进程创建与终止(1)使用 C/C++语言编写程序,调用系统函数创建新进程。
(2)在子进程中执行特定的任务,父进程等待子进程结束,并获取子进程的返回值。
(3)通过设置异常情况,模拟子进程的异常终止,观察父进程的处理方式。
2、进程同步与互斥(1)定义共享资源和相关的信号量或互斥锁。
(2)创建多个进程,模拟对共享资源的并发访问。
(3)在访问共享资源的关键代码段使用同步机制,确保进程之间的正确协作。
(4)观察并分析在不同的并发情况下,系统的运行结果和资源竞争情况。
windows的实验报告(完整版)实验名称:Windows的实验报告实验目的:通过对Windows操作系统的学习和实践,了解并熟悉Windows操作系统的基本功能、操作方法及常用工具,提高计算机操作和应用能力。
实验要求:熟悉Windows操作系统的基本操作方法、文件管理及常用工具的使用。
实验设备:一台装有Windows操作系统的计算机。
实验步骤:1. Windows操作系统的启动与登录a. 按下计算机的电源按钮,等待计算机启动。
b. 在Windows登录界面输入正确的用户名和密码,点击登录。
2. Windows桌面的基本组成a. 熟悉桌面的各个元素,包括桌面图标、任务栏、开始菜单等。
b. 学习桌面图标的创建、删除、移动和重命名等操作。
3. 文件和文件夹管理a. 学习使用资源管理器打开文件和文件夹。
b. 创建新的文件夹,进行文件和文件夹的复制、剪切、粘贴和删除操作。
c. 学习使用搜索功能在计算机中查找文件和文件夹。
4. 常用工具的使用a. 学习使用文本编辑器编辑文本文件。
b. 学习使用画图工具创建简单的图形。
c. 了解并使用系统自带的计算器、记事本、画图、粘贴板等工具。
5. 网络连接与浏览器使用a. 熟悉网络连接的设置,连接到无线网络或有线网络。
b. 打开浏览器,访问常用的网站,搜索信息等。
6. Windows系统设置a. 了解并设置桌面背景、屏幕保护和分辨率等显示设置。
b. 了解并设置日期、时间和时区等时间设置。
c. 学习设置打印机和其他外部设备的配置。
7. 系统维护与安全a. 学习使用杀毒软件进行病毒扫描和清理。
b. 学习使用Windows自带的系统维护工具,如磁盘清理、磁盘碎片整理等。
8. 实验总结通过本次实验,我对Windows操作系统的基本功能和使用方法有了更深入的了解。
掌握了Windows桌面的基本组成,文件和文件夹的管理方法,以及常用工具的使用。
还学会了网络连接与浏览器的操作,Windows系统的基本设置,以及系统维护与安全等知识点。
第1篇实验名称:计算机基本操作与常用软件应用实验日期:2023年3月15日实验地点:计算机实验室实验目的:1. 掌握计算机的基本操作,包括开关机、文件管理、系统设置等。
2. 熟悉常用软件的使用,如文字处理软件、电子表格软件、演示文稿软件等。
3. 提高计算机应用能力,为后续课程学习打下基础。
实验内容:一、计算机基本操作1. 开关机操作(1)打开计算机,等待系统启动完成。
(2)使用鼠标点击屏幕左下角的“开始”按钮,选择“关机”选项。
(3)系统提示是否保存更改,根据实际情况选择保存或取消保存。
(4)点击“确定”按钮,等待计算机完全关闭。
2. 文件管理(1)打开文件资源管理器,了解文件结构。
(2)创建文件夹:点击“文件”菜单,选择“新建”->“文件夹”,输入文件夹名称,按“确定”按钮。
(3)重命名文件或文件夹:选中文件或文件夹,右击鼠标,选择“重命名”,输入新名称,按“Enter”键。
(4)删除文件或文件夹:选中文件或文件夹,右击鼠标,选择“删除”,在弹出的对话框中选择“是”。
3. 系统设置(1)打开“控制面板”,了解系统设置。
(2)调整屏幕分辨率:在“控制面板”中找到“显示”选项,调整分辨率。
(3)设置网络连接:在“控制面板”中找到“网络和共享中心”,设置网络连接。
二、常用软件应用1. 文字处理软件(Microsoft Word)(1)创建新文档:点击“开始”按钮,选择“所有程序”->“MicrosoftOffice”->“Microsoft Word”,打开Word软件。
(2)输入文字:在文档中输入文字,可以使用“格式”工具栏进行文字格式设置。
(3)保存文档:点击“文件”菜单,选择“保存”或“另存为”,设置保存路径和文件名,点击“保存”按钮。
2. 电子表格软件(Microsoft Excel)(1)创建新工作簿:点击“开始”按钮,选择“所有程序”->“Microsoft Office”->“Microsoft Excel”,打开Excel软件。
操作系统实验报告(一)Linux基本操作与编程(验证性 2学时)1、实验目(de):1)熟悉Linux操作系统(de)环境和使用.2)了解LINUX系统(de)安装过程.(注:表示可选择)3)掌握Linux环境下(de)命令操作.2、实验内容:(1)完成LINUX系统(de)登录,启动终端.进行下列操作并记录结果(要求:结果以屏幕截图表示).1)运行pwd命令,确定你当前(de)工作目录.2)利用以下命令显示当前工作目录(de)内容: ls –l3)运行以下命令: ls –al4)使用mkdir命令建立一个子目录subdir.5)使用cd命令,将工作目录改到根目录(/)上.6)使用ls-l命令列出/dev(de)内容.7)使用不带参数(de)命令cd改变目录,然后用pwd命令确定你当前(de)工作目录是哪里8)使用命令cd ../..,你将工作目录移到什么地方(2)在LINUX下查看你(de)文件.1)利用cd命令,将工作目录改到你(de)主目录上.2)将工作目录改到你(de)子目录subdir,然后运行命令: date > file1 将当前日期和时间存放到新建文件file1中.3)使用cat命令查看file1文件(de)内容.4)利用man命令显示date命令(de)用法: man date5)将date命令(de)用法附加到文件file1(de)后面:man date >> file16)利用cat命令显示文件file1(de)内容.7)利用ls -l file1命令列出文件file1(de)较详细(de)信息.运行ls -l/bin 命令显示目录(de)内容.8)利用ls -l/bin|more命令行分屏显示/bin目录(de)内容.9)利用cp file1 fa命令生成文件file1(de)副本.然后利用ls -l命令查看工作目录(de)内容.10)用cd命令返回你(de)主目录,输入命令ls –l后,解释屏幕显示(de)第一列内容(de)含义.(3)编写能输出“Hello world”问候语(de)C程序,并在终端中编译、执行.要求记录所使用(de)命令及结果.操作步骤:1)在文本编辑器中,编写C程序如下:include ""main(){ printf("hello"); }2) 在终端中,用gcc命令进行编译,生成可执行文件a.gcc –o a3) 在终端中执行a (de)命令如下:./a(4)编写一个程序:显示信息“Time for Play”,并能在后台运行一段时间(自定义)后,弹出信息提醒用户.要求记录所使用(de)命令及结果.(提示:使用sleep(s)函数)3、实验结果分析:(对上述实验内容中(de)各题结果,进行分析讨论.并回答下列问题)(1)进程包括哪些特征间断性, 失去封闭性, 不可再现性, 动态性, 并发性, 独立性(2)在Linux中,如何设置前、后台命令和程序(de)执行命令后直接加 & ,这个命令就在后台执行;正在运行(de)命令,使用Ctrl+z ,就挂起; jobs命令,可以现实后台,包括挂起(de)命令;使用 bg %作业号就可以把挂起(de)命令在后台执行;使用 fg %作业号就可以把后台命令调到前台(3)你所使用(de)Linux系统(de)内核版本是多少用什么命令查看内核版本目前你所了解(de)各发行版本(de)情况如何Linux version (gcc version (Red Hat (GCC) ) 1 SMP Tue Jan 2911:48:01 EST 2013(4)你对Linux系统有什么认识linux是一款开放性(de)操作系统,也可以说成是开放(de)源代码系统,这些代码可以完全自由(de)修改可以再任何(de)计算机上去运行它,也就是“可移植性”,其次大家都知道,linux是由UNIX(de)概念所开发出来(de),所以它也继承了UNIX(de)稳定和效率(de)特点4、总结:你对本次实验有什么体会或看法.操作系统实验报告(二)文件访问权限设置与输入输出重定向(2学时)一、实验目(de)1、掌握linux(de)文件访问权限设置.2、熟悉输入输出重定向和管道操作.二、实验内容1、启动进入红帽linux系统2、设置文件权限:在用户主目录下创建目录test,进入test目录,用vi 创建文件file1,并输入任意(de)文字内容.用ls -l显示文件信息,注意文件(de)权限和所属用户和组.对文件file1设置权限,使其他用户可以对此文件进行写操作:chmod o+w file1.用ls -l查看设置结果.取消同组用户对此文件(de)读取权限:chmod g-r file1.查看设置结果.用数字形式来为文件file1设置权限,所有者可读、可写、可执行;其他用户和所属组用户只有读和执行(de)权限:chmod 755 file1.设置完成后查看设置结果.3、输入、输出重定向和管道(1) 输出重定向用ls命令显示当前目录中(de)文件列表:ls –l.使用输出重定向,把ls命令在终端上显示(de)当前目录中(de)文件列表重定向到文件list中:ls –l > list.查看文件list中(de)内容,注意在列表中会多出一个文件list,其长度为0. 这说明shell是首先创建了一个空文件,然后再运行ls命令:cat list.再次使用输出重定向,把ls命令在终端上显示(de)当前目录中(de)文件列表重定向到文件list中.这次使用追加符号>>进行重定向:ls –l >> list.查看文件list(de)内容,可以看到用>>进行重定向是把新(de)输出内容附加在文件(de)末尾,注意其中两行list文件(de)信息中文件大小(de)区别:cat list.重复命令ls –l > list.再次查看文件list中(de)内容,和前两次(de)结果相比较,注意list文件大小和创建时间(de)区别.(2) 管道who |grep root命令(de)结果是命令ls –l |wc –l结果是4、退出linux系统操作步骤:在主菜单上选择“注销” ->关闭计算机.三、实验结果与讨论(根据实验结果回答下列问题)1. 文件(de)权限如下:-rw-r—r-- 1 root root 19274 Jul 14 11:00回答:-rw-r—r-- (de)含义是什么答:是LINUX/FTP(de)简易权限表示法:对应于本用户-所在组-其他人(de)权限,每一个用执行(x)-读取(r)-写入(w)如本题若是说自己可以读取写入不可以执行,所在组和其他人只能读取.2、文件(de)所有者添加执行权限(de)命令是答:chmod u+x 、赋予所有用户读和写文件权限(de)命令是四、答:chmod a+w,a+r 个人体会(你对本次实验有什么体会或看法)操作系统实验报告(三)文件和目录管理一、实验目(de)1) 掌握在Linux系统下(de)文件和文件系统(de)概念及命令;2) 掌握Linux系统下(de)目录操作.二、实验内容1. 进入linux终端后,用命令(de)操作结果回答下列问题:1)vi(de)三种工作模式是其中不能进行直接转换(de)是什么模式到什么模式命令模式、文本输入模式、末行模式命令模式不能直接到末行模式2)在vi中退出时,保存并退出(de)操作步骤是Ese:wq3)用vi 创建myfile1文件,并在其中输入任意文字一行,创建myfile2文件,任意输入文字3行.请问执行命令:cat <myfile1 >myfile2 后,myfile2中还有几行内容该命令(de)作用是用命令操作验证你(de)回答.myfile2中还有1行内容该命令(de)作用是替换myfile(de)内容4)请用至少两种不同(de)命令创建一个文本文件(),在其中写入“我是2014级学生,我正在使用Linux系统.”,记录命令及执行结果.1、Vi创建2、5)用___pwd________命令可查看所创建文件(de)绝对路径,写出它(de)绝对路径__/root_________;用___ls -l________命令查看该文件(de)类型及访问权限,其访问权限(数字和字母)分别是多少__-rw- r- - r- - 6 4 4______________.6)若将该文件(de)访问权限修改为:所有者有读写权限;其他用户只读;同组用户可读写,请写出命令,并记录结果.7)查找my开头(de)所有文件,可___find my_________命令,写出命令并记录结果8)在/home下创建子目录user,并在其中创建2个文件,名为file1和file2,file1(de)内容是/root目录(de)详细信息;file2(de)内容任意,最后将这两个文件合并为file3文件,请先写出命令序列,并在终端中验证,记录结果.2. 文件及目录操作,写出操作所使用(de)命令,并记录结果.在终端中完成下列命令操作,并记录结果在root用户主目录下创建一个mydir子目录和一个myfile文件,再在mydir下建立d1和d2两个子目录.查看mydir和myfile(de)默认权限查看当前myfile和mydir(de)权限值是多少将myfile文件分别复制到root 和dd1(de)主目录中将root主目录中(de)myfile改为yourfile通过从键盘产生一个新文件并输入I am a student查找文件是否包含student字符串三、实验结果与分析,回答下列问题:1、能够创建文件(de)命令有哪些vi 和cat>name2、能够查看当前目录(de)绝对路径(de)命令是pwd3、Linux中按用户属性将用户分成哪些类型根据文件(de)访问权限,用户又被分成哪些类型能够查看文件访问权限(de)命令是用户同组其他可读可写可执行 cat f1四、小结(本次实验(de)体会或小结)操作系统实验报告(四)作业调度算法模拟(验证性2学时)1、实验目(de):1)掌握作业调度(de)主要功能及算法.2)通过模拟作业调度算法(de)设计加深对作业管理基本原理(de)理解.3)熟悉Linux环境下应用程序(de)编程方法.2、实验内容:(1)作业调度算法(FCFS)编程模拟:编制一段程序,对所输入(de)若干作业,输入、输出数据样例如下表所示.按FCFS算法模拟调度,观察、记录并分析调度(de)输出结果情况.输入输出样例1:FCFS算法include <>include <>define SIZE 5struct Job_type{char no[2]; o,&job[i].tb,&job[i].tr);printf("输入作业顺序:\n");for(i=0;i<SIZE;i++)printf("\t%s\t%d\t%d\n",job[i].no,job[i].tb,job[i].tr);}void fcfs(){ int i,j,t=0,tw=0,tt=0;for(i=0;i<SIZE-1;i++)for(j=i+1;j<SIZE;j++)if(job[i].tb>job[j].tb){x=job[i];job[i]=job[j];job[j]=x;}printf("FCFS调度结果:\n");printf("开始时间作业号到达时间运行时间完成时间等待时间周转时间\n");for(i=0;i<SIZE;i++){printf(" %d",t);t=t+job[i].tr;tw=t-job[i].tb-job[i].tr; b; o,job[i].tb,job[i].tr,t,tw,tt);}}void main(){load();fcfs();}(2)作业调度算法(SJF)编程模拟:编程实现由短作业优先算法,分别用下面两组输入、输出数据样例进行模拟,观察分析运行结果.输入输出样例2:SJF算法输入输出A 0 4B 0 3C 0 5D 0 2E 0 1A 0 6 10 10B 0 3 6 6C 0 10 15 15D 0 1 3 3E 0 0 1 1include <>include <>define SIZE 5struct Job_type{char no[2]; o,&job[i].tb,&job[i].tr);printf("输入作业顺序:\n");for(i=0;i<SIZE;i++)printf("\t%s\t%d\t%d\n",job[i].no,job[i].tb,job[i].tr);}void sjf()n=i; pl[i].pfn=ERR;}for(i=1;i<total;i++){ pfc[i-1].next=&pfc[i];pfc[i-1].pfn=i-1;}pfc[total-1].next=NULL;pfc[total-1].pfn=total-1;freepf_head=&pfc[0];}void FIFO(int total){ int i,j;pfc_type p,t;initialize(total);busypf_head=busypf_tail=NULL;for(i=0;i<page_len;i++){if(pl[page[i]].pfn==ERR){ diseffect+=1;if(freepf_head==NULL){p=busypf_head->next;pl[busypf_head->pn].pfn=ERR; freepf_head=busypf_head;freepf_head->next=NULL;busypf_head=p;}p=freepf_head->next;freepf_head->next=NULL;freepf_head->pn=page[i];pl[page[i]].pfn=freepf_head->pfn;if(busypf_tail==NULL)busypf_head=busypf_tail=freepf_head; else{ busypf_tail->next=freepf_head;busypf_tail=freepf_head;}freepf_head=p;}}printf("FIFO:%d",diseffect);}main(){ int i; int k;printf(“请输入页(de)引用序列:\n”); for(k=0;k<page_len;k++)scanf("%d",&page[k]);for(i=4;i<=7;i++){printf("%2d page frames ",i);FIFO(i);}参考程序LRU算法,略三、实验结果分析:(对上述实验各题所使用(de)原始数据、调试数据与状态(包括出错)及最终结果进行记录并分析.)随着块数(de)增加,缺页数目也减少,4个实验中3个实验(de)块数增加到了5以后,即使块数再增加,缺页数目也是保持不变.只有实验4,块数增加到7以后,缺页数目又再次减少了四、总结:你对本次实验有什么体会或看法.。
第1篇一、实验目的本次实验旨在通过实际操作,使学生掌握操作系统安装的基本方法,熟悉不同操作系统的安装流程,提高学生的实际动手能力和系统维护能力。
二、实验环境1. 实验机:一台具备安装操作系统能力的计算机,硬件配置满足实验要求。
2. 操作系统:Windows 10、Linux Ubuntu等。
3. 实验工具:安装光盘、U盘启动工具、系统镜像文件等。
三、实验内容1. Windows 10操作系统安装2. Linux Ubuntu操作系统安装3. 操作系统安装过程中的注意事项及解决方法四、实验步骤1. Windows 10操作系统安装(1)准备安装光盘或U盘启动工具,将Windows 10系统镜像文件复制到U盘中。
(2)开机进入BIOS设置,将启动顺序设置为U盘启动。
(3)从U盘启动,进入Windows 10安装界面。
(4)选择安装语言、时间和键盘布局,点击“下一步”。
(5)点击“我接受许可条款”,点击“下一步”。
(6)选择安装类型,这里选择“自定义:仅安装Windows(高级)”。
(7)选择磁盘分区,将所有磁盘空间分给新分区。
(8)格式化分区,点击“下一步”。
(9)等待系统安装完成,重启计算机。
2. Linux Ubuntu操作系统安装(1)准备安装光盘或U盘启动工具,将Ubuntu系统镜像文件复制到U盘中。
(2)开机进入BIOS设置,将启动顺序设置为U盘启动。
(3)从U盘启动,进入Ubuntu安装界面。
(4)选择安装语言、时间和键盘布局,点击“继续”。
(5)选择安装类型,这里选择“桌面安装”。
(6)选择磁盘分区,将所有磁盘空间分给新分区。
(7)格式化分区,点击“继续”。
(8)选择安装位置,点击“继续”。
(9)设置用户名、密码等信息,点击“继续”。
(10)等待系统安装完成,重启计算机。
五、实验结果1. 成功安装Windows 10操作系统。
2. 成功安装Linux Ubuntu操作系统。
六、实验总结1. 在安装操作系统过程中,要确保计算机硬件配置满足系统要求,以免出现安装失败的情况。
实验windows系统的操作实验报告
《实验报告:Windows系统的操作实验》
实验目的:通过操作Windows系统,熟悉系统界面和常用功能,掌握基本操作技能。
实验步骤:
1. 开机启动Windows系统,进入桌面界面。
2. 熟悉桌面上的各个图标和任务栏的功能,包括开始菜单、文件资源管理器、控制面板等。
3. 打开文件资源管理器,浏览系统中的文件和文件夹,了解文件的存储路径和属性。
4. 进入控制面板,了解系统设置和管理工具,如网络和Internet设置、用户账户管理等。
5. 打开浏览器,访问网页并了解浏览器的基本操作,如打开新标签页、书签管理、下载文件等。
6. 进行文件操作实验,包括新建文件夹、复制、剪切、粘贴文件等操作。
7. 学习系统设置实验,如更改桌面背景、调整分辨率、设置屏幕保护程序等。
8. 了解系统更新和安全设置,如Windows更新、防病毒软件的安装和更新等。
实验总结:
通过本次实验,我对Windows系统的操作有了更深入的了解,掌握了系统的基本操作技能。
我熟悉了系统界面和常用功能,能够自如地进行文件操作、系统设置和网络浏览等操作。
同时,我也意识到系统的安全设置和更新是非常重要的,需要及时更新系统和安装防病毒软件,以保护系统和个人信息的安全。
在今后的学习和工作中,我将继续加强对Windows系统的操作和管理,不断提升自己的技能水平,为更高效地使用计算机系统做好准备。
同时,我也会关注
系统的安全和稳定性,保护好自己的计算机和数据,避免不必要的风险和损失。
操作系统上机实验报告计算机科学与技术学院操作系统上机实验报告实验名称:进程和线程实验⽬的:理解unix/Linux下进程和线程的创建、并发执⾏过程。
实验内容:1.进程的创建2.多线程应⽤实验步骤:⼀、进程的创建下⾯这个C程序展⽰了UNIX系统中⽗进程创建⼦进程及各⾃分开活动的情况。
1、实验指导fork( )创建⼀个新进程。
系统调⽤格式:pid=fork( )参数定义:int fork( )fork( )返回值意义如下:0:在⼦进程中,pid变量保存的fork( )返回值为0,表⽰当前进程是⼦进程。
>0:在⽗进程中,pid变量保存的fork( )返回值为⼦进程的id值(进程唯⼀标识符)。
-1:创建失败。
如果fork( )调⽤成功,它向⽗进程返回⼦进程的PID,并向⼦进程返回0,即fork( )被调⽤了⼀次,但返回了两次。
此时OS在内存中建⽴⼀个新进程,所建的新进程是调⽤fork( )⽗进程(parent process)的副本,称为⼦进程(child process)。
⼦进程继承了⽗进程的许多特性,并具有与⽗进程完全相同的⽤户级上下⽂。
⽗进程与⼦进程并发执⾏。
2、参考程序代码/*process.c*/#include#includemain(int argc,char *argv[]){int pid;/* fork another process */pid = fork();if (pid < 0) { /* error occurred */fprintf(stderr, "Fork Failed");exit(-1);}else if (pid == 0) { /* child process */ execlp( "/bin/ls", "ls",NULL);}else {/* parent process *//* parent will wait for the child to complete */ wait(NULL);printf( "Child Complete" );exit(0);}}3、编译和运⾏$gcc process.c –o processs4、运⾏$./process5、思考(1)系统是怎样创建进程的?⽤fork()系统调⽤创建。
windows操作系统实验报告1. 实验目的本实验旨在通过对Windows操作系统的实际操作,了解和掌握Windows操作系统的基本功能、应用程序管理、文件管理以及网络连接等方面的知识。
2. 实验环境本次实验使用的操作系统为Windows 10,并安装了常用应用程序和网络连接工具。
3. 实验步骤3.1 Windows操作系统的基本功能3.1.1 开机与关机在实验机器上按下电源按钮,进行开机操作,待Windows系统完全加载后,进入桌面。
点击“开始”按钮,选择“关机”选项,进行关机操作。
3.1.2 桌面的基本元素桌面是Windows操作系统的主要工作区域,它包含了以下基本元素:- 桌面图标:代表文件、文件夹或快捷方式,用于快速访问。
- 任务栏:位于屏幕底部,用于启动应用程序、显示当前运行的任务和系统图标等。
- 通知区域:位于任务栏的右侧,显示系统图标和通知。
3.2 应用程序管理3.2.1 启动应用程序在任务栏上单击鼠标右键,选择“启动任务管理器”打开任务管理器窗口。
点击“应用程序”选项卡,可以查看当前正在运行的应用程序。
双击某个应用程序图标或右键单击该应用程序图标,选择“打开”即可启动相应的应用程序。
3.2.2 切换应用程序使用Alt+Tab键可以在多个应用程序之间快速切换。
3.2.3 关闭应用程序在应用程序的窗口右上角找到“X”按钮,点击即可关闭该应用程序。
3.3 文件管理3.3.1 创建文件夹在桌面或文件资源管理器中,右键单击空白处,选择“新建” -> “文件夹”,输入文件夹名称即可创建新的文件夹。
3.3.2 复制、粘贴文件选中需要复制的文件或文件夹,按下Ctrl+C进行复制,在目标位置按下Ctrl+V进行粘贴。
3.3.3 删除文件选中需要删除的文件,按下Delete键或右键单击文件选择“删除”。
3.3.4 文件搜索点击“开始”按钮,在搜索框中输入文件名或相关关键词,系统会在磁盘中搜索匹配的文件并显示结果。
操作系统实验报告
工程大学
计算机科学与技术学院
一.实验概述
1.实验名称:操作系统的启动
2.实验目的:
1)跟踪调试EOS在PC机上从加电复位到成功后启动的全过程,了解操作系统的启动过程;
2)查看EOS启动后的状态和行为,理解操作系统启动后的工作方式。
3.实验类型:验证,设计
4.实验容:
1)准备实验,启动OS Lab,新建一个EOS Kernel项目;
2)调试EOS操作系统的启动过程
①使用Bochs作为远程目标机
②调试BIOS程序
③调试软盘引导扇区程序
④调试加载程序
⑤调试核
⑥查看EOS启动后的状态和行为
二.实验环境
操作系统:windows XP
编译器:Tevalaton OS Lab
语言:C++
三.实验过程
1.设计思路和流程图:
2.实验过程:
1)在Console窗口中输入调试指令sreg,查看当前CPU中各个段寄存器的值,其中CS寄存器信息行中的“s=0xf000”表示CS寄存器的值为0xf000。
2)输入调试命令r,显示当前CPU中各个通用寄存器的值,“rip: 0x00000000:0000fff0”表示 IP 寄存器的值为 0xfff0。
3)输入调试命令 xp /1024b 0x0000,查看开始的 1024 个字节的物理存。
在Console 中输出的这 1K 物理存的值都为 0,说明 BIOS 中断向量表还没有被加载到此处。
4)输入调试命令 xp /512b 0x7c00,查看软盘引导扇区应该被加载到的存位置。
输出的存值都为 0,说明软盘引导扇区还没有被加载到此处。
可以验证 BIOS 第一条指令所在逻辑地址中的段地址CS寄存器值是一致的,偏移地址和 IP 寄存器的值是一致的。
由于存还没有被使用,所以其中的值都为0。
5)输入调试命令 vb 0x0000:0x7c00,这样就在逻辑地址 0x0000:0x7c00(相当于物理地址 0x7c00)处添加了一个断点。
输入调试命令 c 继续执行,在 0x7c00 处的断点中断。
中断后会在 Console 窗口中输出下一个要执行的指令,即软盘引导扇区程序的第一条指令。
6)输入调试命令 sreg 验证 CS 寄存器(0x0000)的值。
7)输入调试命令 r 验证 IP 寄存器(0x7c00)的值。
8)输入调试命令 xp /512b 0x0600 可验证第一个用户可用区域是空白的。
9)设计两个查看存的调试命令,分别验证这两个用户可用区域的高地址端也是空白的。
10)软盘引导扇区程序的主要任务就是将软盘中的 loader.bin 文件加载到物理存的 0x1000 处,然后跳转到 loader 程序的第一条指令(物理地址 0x1000 处的指令)继续执行 loader 程序。
输入调试命令xp /8b 0x1000查看存0x1000处的数据,验证此块存的前三个字节和loader.lst 文件中的第一条指令的字节码是相同的。
11)根据之前记录的 loader.bin 文件的大小,自己设计一个查看存的调试命令,查看存中 loader 程序结束位置的字节码,并与 loader.lst 文件中最后指令的字节码比较,验证 loader 程序被完全加载到了正确的位置。
12)调试核,在项目管理器中打开start.c文件,对其中的操作系统核入口点函数KiSystemStartup添加断点及监视,在监视窗口中可以看到此函数的地址,与在虚拟存x80001117处保存的函数入口地址相同,说明的确是由loader程序进入了操作系统核。
13)在控制台中输入命令“ver”,可得EOS的的版本,在控制台中输入命令“pt”,课查看输出的进程和线程信息。
在进程列表中只有一个 ID 为 1 的系统进程,其优先级为 24,包含有 10 个线程,其中的 ID 为 2 的线程是该进程的主线程,系统进程没有映像名称。
在线程列表中有 10 个线程,它们都是系统线程。
其中优先级为 0 的是空闲线程,当没有优先级大于 0 的线程占用处理器时,空闲线程就会在处理器上运行并处于运行状态(Running),否则就处于就绪状态(Ready)。
ID 为 20 的线程是控制台派遣线程,用于将键盘事件派遣到活动的控制台线程,所以在没有键盘事件发生的时间里,该线程
都处于阻塞状态(Waiting)。
余下的八个线程都是控制台线程,分别对应于八个控制台,由于它们执行的是同一个控制台线程函数(ke/sysproc.c 文件中的 KiShellThread 函数),所以它们开始执行的地址都是相同的。
控制台线程只有在处理控制台命令的时候才会处于运行状态,其它时间它们都在等待控制台命令的输入,会处于阻塞状态。
由于本次是在控制台 1 中执行的 pt 命令,所以控制台 1 对应的线程处于运行状态,而其它的七个控制台线程都处于阻塞状态。
14)将实验文件夹中的hello.exe文件添加到软盘镜像文件中,并在EOS启动完毕后,在EOS控制台中输入命令“hello”,迅速切换到控制台2,输入命令“pt”,可查看输出的进程和线程信息。
四.实验体会
本次实验了解了操作系统启动后的行为和状态,通过一步步具体的操作,理解了操作系统启动后运行的每个方面。
在实验的过程中,对于自己设计的命令,可以在给定的围进行尝试,并不仅仅是将步骤中的例子略微改动,对于验证loader.lst文件最后的字节码命令,需要经过一定的计算,由于其文件大小为1.56KB,因此需要将最后的位置减去8b,得到最后一个字节码的位置,因此是0x1616。
通过比较hello程序添加之前之后的进程状态比较,可以看出ID为33的线程是应用程序的主线程,数量只有一个,hello程序和系统进程区别是SYSTEM栏是N,且优先级比系统低,系统是24,应用程序是8。