操作系统课程 实验报告(完整版)
- 格式:doc
- 大小:309.50 KB
- 文档页数:19
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操作系统的安装、配置和使用。
一、实验背景与目的随着计算机技术的飞速发展,操作系统作为计算机系统的核心,其重要性日益凸显。
为了更好地理解操作系统的工作原理和设计思想,我们选择了高级操作系统课程,并完成了以下实验:1. 实验背景本次实验基于Linux操作系统,通过对Linux系统内部结构和操作过程的研究,掌握Linux系统的基本操作、文件系统管理、进程管理、内存管理、设备管理等方面的知识。
2. 实验目的(1)熟悉Linux操作系统的基本操作,包括登录、退出、文件与目录操作等。
(2)掌握Linux系统下的进程管理,包括进程的创建、调度、同步、通信等。
(3)了解Linux系统下的内存管理,包括虚拟内存、页面置换算法等。
(4)学习Linux系统下的设备管理,包括设备驱动程序、I/O调度等。
二、实验内容与步骤1. 实验一:Linux基本操作(1)实验目的:熟悉Linux系统的基本操作。
(2)实验步骤:① 登录Linux系统。
② 使用命令行查看系统信息,如CPU型号、内存大小等。
③ 创建和删除文件与目录。
④ 查看文件内容。
2. 实验二:文件系统管理(1)实验目的:掌握Linux系统下的文件系统管理。
(2)实验步骤:① 使用命令行查看文件系统类型。
② 查看文件系统分区。
③ 使用命令行创建和删除文件系统。
④ 使用命令行挂载和卸载文件系统。
3. 实验三:进程管理(1)实验目的:掌握Linux系统下的进程管理。
(2)实验步骤:① 使用命令行查看系统进程。
② 创建和终止进程。
③ 调整进程优先级。
④ 实现进程同步与互斥。
4. 实验四:内存管理(1)实验目的:了解Linux系统下的内存管理。
(2)实验步骤:① 使用命令行查看内存信息。
② 查看内存分配情况。
③ 实现页面置换算法。
5. 实验五:设备管理(1)实验目的:学习Linux系统下的设备管理。
(2)实验步骤:① 使用命令行查看设备信息。
② 编写简单的设备驱动程序。
③ 实现I/O调度。
三、实验结果与分析1. 实验结果通过本次实验,我们成功完成了以下任务:(1)熟悉了Linux操作系统的基本操作。
华北电力大学实验报告||实验名称操作系统实验课程名称操作系统综合实验||专业班级:学生姓名:学号:成绩:指导教师:实验日期:华北电力大学实验报告工具包集合。
EOS SDK文件夹主要包括INC头文件、LIB文件夹导入库文件和BIN文件夹动态链接库,可执行程序,二进制文件。
EOS SDK包含的头文件有:eos.h负责导出API函数声明;eosdef.h负责导出函数类型的定义;error.h 负责导出错误码。
四.实验过程1.新建Windows控制台应用程序生成项目:执行项目:调试项目:2.使用断点终端执行:查看EOS SDK(Software Development Kit)文件夹:修改EOS应用程序项目名称:五.实验心得这次是验证性试验,具体步骤和操作方法都是与实验教程参考书上一致,实验很顺利,实验过程没有遇到困难。
通过这次实验,我掌握了OS Lab启动和退出操作;练习使用OS Lab编写一个Windows控制台应用程序,熟悉OS Lab 的基本使用方法新建项目、生成项目、调试项目等。
第页共页华北电力大学实验报告第页共页华北电力大学实验报告第页共页2. 当loop线程在控制台1中执行,并且在控制台2中执行suspend命令时,为什么控制台1中的loop线程处于就绪状态而不是运行状态?3. 在本实验3.2节中只调试了图5-3中显示的最主要的四种转换过程,对于线程由新建进入就绪状态,或者由任意状态进入结束状态的转换过程还没有调试,请读者找到这两个转换过程执行的源代码,自己练习调试。
4. 总结一下在图5-3中显示的转换过程,哪些需要使用线程控制块中的上下文(将线程控制块中的上下文恢复到处理器中,或者将处理器的状态复制到线程控制块的上下文中),哪些不需要使用,并说明原因。
5. 在本实验3.2节中总结的所有转换过程都是分步骤进行的,为了确保完整性,显然这些转换过程是不应该被打断的,也就是说这些转换过程都是原语操作(参见本书第2.6节)。
操作系统课程设计实验报告公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-湖南科技大学计算机科学与工程学院操作系统课程设计报告学号:姓名:班级:指导老师:完成时间: 2017年6月23日目录实验一一、实验题目实验一 Windows进程管理二、实验目的1)学会使用 VC 编写基本的 Win32 Consol Application(控制台应用程序)。
2)通过创建进程、观察正在运行的进程和终止进程的程序设计和调试操作,进一步熟悉操作系统的进程概念,理解 Windows进程的“一生”。
3)通过阅读和分析实验程序,学习创建进程、观察进程、终止进程以及父子进程同步的基本程序设计方法。
三、总体设计1)背景知识Windows 所创建的每个进程都从调用 CreateProcess() API 函数开始,该函数的任务是在对象管理器子系统内初始化进程对象。
每一进程都以调用ExitProcess() 或TerminateProcess() API函数终止。
通常应用程序的框架负责调用 ExitProcess() 函数。
对于 C++ 运行库来说,这一调用发生在应用程序的main() 函数返回之后。
a)创建进程CreateProcess() 调用的核心参数是可执行文件运行时的文件名及其命令行。
表 1-1 详细地列出了每个参数的类型和名称。
可以指定第一个参数,即应用程序的名称,其中包括相对于当前进程的当前目录的全路径或者利用搜索方法找到的路径;lpCommandLine 参数允许调用者向新应用程序发送数据;接下来的三个参数与进程和它的主线程以及返回的指向该对象的句柄的安全性有关。
然后是标志参数,用以在 dwCreationFlags 参数中指明系统应该给予新进程什么行为。
经常使用的标志是CREATE_SUSPNDED,告诉主线程立刻暂停。
当准备好时,应该使用 ResumeThread() API来启动进程。
计算机操作系统实验报告一、实验目的本次实验旨在深入了解计算机操作系统的基本原理和功能,通过实际操作和观察,掌握操作系统的进程管理、内存管理、文件系统管理等核心内容,提高对计算机系统的整体认识和实践能力。
二、实验环境操作系统:Windows 10开发工具:Visual Studio 2019编程语言:C++三、实验内容与步骤(一)进程管理实验1、创建进程使用 C++中的`CreateProcess`函数创建一个新的进程。
在代码中指定要执行的程序路径和相关参数,并观察新进程的创建和运行情况。
```cppinclude <windowsh>include <iostream>int main(){STARTUPINFO si;PROCESS_INFORMATION pi;ZeroMemory(&si, sizeof(si));sicb = sizeof(si);ZeroMemory(&pi, sizeof(pi));//要执行的程序路径LPCWSTR path = L"C:\\Windows\\System32\\notepadexe";if (!CreateProcess(path, NULL, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)){std::cout <<"CreateProcess failed Error code: "<<GetLastError()<< std::endl;return 1;}//等待进程结束WaitForSingleObject(pihProcess, INFINITE);CloseHandle(pihProcess);CloseHandle(pihThread);}```2、进程同步与互斥通过编写代码实现生产者消费者问题,使用信号量来实现进程之间的同步与互斥。
```cppinclude <windowsh>include <iostream>include <queue>const int BUFFER_SIZE = 5;std::queue<int> buffer;HANDLE fullSemaphore;HANDLE emptySemaphore;HANDLE mutex;DWORD WINAPI Producer(LPVOID lpParam) {int item = 0;while (true) {WaitForSingleObject(emptySemaphore, INFINITE);WaitForSingleObject(mutex, INFINITE);if (buffersize()< BUFFER_SIZE) {bufferpush(item);std::cout <<"Producer produced: "<< item << std::endl;}ReleaseMutex(mutex);ReleaseSemaphore(fullSemaphore, 1, NULL);}return 0;}DWORD WINAPI Consumer(LPVOID lpParam) {int item = 0;while (true) {WaitForSingleObject(fullSemaphore, INFINITE);WaitForSingleObject(mutex, INFINITE);if (!bufferempty()){item = bufferfront();bufferpop();std::cout <<"Consumer consumed: "<< item << std::endl;}ReleaseMutex(mutex);ReleaseSemaphore(emptySemaphore, 1, NULL);}return 0;}int main(){fullSemaphore = CreateSemaphore(NULL, 0, BUFFER_SIZE, NULL);emptySemaphore = CreateSemaphore(NULL, BUFFER_SIZE, BUFFER_SIZE, NULL);mutex = CreateMutex(NULL, FALSE, NULL);HANDLE hProducerThread = CreateThread(NULL, 0, Producer, NULL, 0, NULL);HANDLE hConsumerThread = CreateThread(NULL, 0, Consumer, NULL, 0, NULL);WaitForSingleObject(hProducerThread, INFINITE);WaitForSingleObject(hConsumerThread, INFINITE);CloseHandle(fullSemaphore);CloseHandle(emptySemaphore);CloseHandle(mutex);CloseHandle(hProducerThread);CloseHandle(hConsumerThread);return 0;}```(二)内存管理实验1、内存分配与释放使用 C++中的`new`和`delete`操作符进行内存的动态分配和释放,并观察内存使用情况。
操作系统原理实验报告一、实验目的操作系统是计算机系统中最为关键的软件之一,它负责管理和控制计算机的硬件和软件资源,为用户和应用程序提供一个方便、高效、稳定的运行环境。
本次实验的目的在于通过实际操作和观察,深入理解操作系统的核心原理和关键机制,包括进程管理、内存管理、文件系统管理、设备管理等方面,提高对操作系统的认识和应用能力。
二、实验环境本次实验使用的操作系统为 Windows 10 专业版,开发工具为Visual Studio 2019,编程语言为 C++。
三、实验内容及步骤(一)进程管理实验1、进程创建与终止编写程序,使用系统调用创建一个新的进程,并在新进程中执行特定的任务,如打印一段文本。
观察新进程的创建过程和资源分配情况。
编写程序,实现父进程等待子进程终止,并获取子进程的退出状态。
2、进程调度编写程序,模拟多个进程的并发执行,设置不同的优先级和时间片。
观察进程的调度顺序和执行时间,分析调度算法的效果。
(二)内存管理实验1、内存分配与释放编写程序,使用动态内存分配函数(如 malloc、new 等)申请一定大小的内存空间,并进行读写操作。
观察内存的分配和释放过程,检查是否存在内存泄漏。
2、内存分页与分段了解操作系统的内存分页和分段机制。
编写程序,模拟内存分页和分段的过程,展示地址转换和页面置换算法的效果。
(三)文件系统管理实验1、文件创建与读写编写程序,创建一个新文件,并向文件中写入一定的数据。
读取文件中的数据,并进行验证。
2、文件目录操作编写程序,实现对文件目录的创建、删除、遍历等操作。
观察文件目录的结构和变化。
(四)设备管理实验1、设备驱动程序了解设备驱动程序的基本概念和工作原理。
编写一个简单的设备驱动程序,实现对特定设备的控制和数据传输。
2、设备中断处理模拟设备中断的产生和处理过程。
编写中断处理程序,处理设备中断事件。
四、实验结果与分析(一)进程管理实验结果与分析1、进程创建与终止成功创建了新进程,并在新进程中打印出指定的文本。
操作系统课程设计实验报告专业班级计算机科学与技术学生姓名及学号课程教学班号0001班任课教师实验指导教师实验地点2009 ~2010 学年第二学期计算机与信息学院(一)课程设计任务、要求、目的:操作系统接口:兼容Unix/Linux命令接口。
(2人)4分●为Windows操作系统建立一个兼容Unix命令的命令接口;●实现命令包括ls,cat,cp,mv,md,rd,cd,sort,more,print,命令的内容与详细格式请查阅unix命令手册;●可以字符形式接收命令,执行命令,然后显示命令执行结果;(二)原理及算法描述:通过visual C++6.0中自带的system()函数将输入的Unix命令转换成windowsdos系统下相对应的命令,进行执行即可完成Unix命令的操作。
Unix命令在dos中对应的命令如下:◆语法显示目录或文件名的内容ls -f [ -C ] [ -d ] [ -i ] [ -m ] [ -s ] [ -x ] [ -1 ] [ Directory ... ]描述:ls 命令将每个由Directory 参数指定的目录或者每个由File 参数指定的名称写到标准输出,以及您所要求的和标志一起的其它信息。
如果不指定File 或Direct ory 参数,ls 命令显示当前目录的内容。
当ls 命令显示目录内容时,它不显示名称以.(点)开头的文件项,除非使用了-a 或者-A 标志。
如果命令由root 用户执行,它缺省使用-A 标志。
◆函数实现void ls(string *lsinput,int lscount){string result="dir "+lsinput[1];if(lscount == 1){system("dir");}else if(lscount == 2){if(lsinput[1] == "+?" )cout<<PRINTLSHELP<<endl;else{char fc[200];if(!::GetCurrentDirectory(200,fc)){cout<<"路径可能不存在!"<<endl;return;}if(!SetCurrentDirectory(lsinput[1].c_str())){cout<<"路径可能不存在!"<<endl;return;}system(result.c_str());}}}(2)cat◆语法cat text 显示text这个文件;cat file1 file2 依顺序显示file1,file2的内容;cat file1 file2>file3 把file1,file2的内容结合起来,再“重定向(>)”到file3文件中。
操作系统实验报告操作系统实验报告一、引言操作系统作为计算机系统的核心软件,负责管理和协调系统的硬件和软件资源,为用户和应用程序提供一个友好和高效的运行环境。
本次实验旨在通过手动模拟实现一个简单的操作系统,来加深对操作系统原理和机制的理解。
二、实验目的1. 理解操作系统的基本概念和功能;2. 掌握进程管理、内存管理、文件系统等操作系统核心机制;3. 能够使用C语言编程实现简单的操作系统模块。
三、实验过程1. 进程管理进程是指计算机中正在运行的一个程序。
本次实验中,我们通过创建一个简化的进程管理模块,实现了进程的创建、终止、切换等功能。
具体实现过程为:(1)定义进程控制块(PCB)结构,用于保存进程的各种信息;(2)实现进程的创建函数,可以根据参数创建一个新的进程,并为之分配资源;(3)实现进程的终止函数,可以销毁一个已经存在的进程,并释放该进程占用的资源;(4)实现进程的切换函数,可以将CPU的控制权从一个进程转移到另一个进程。
2. 内存管理内存管理是操作系统中非常重要的一部分,负责管理计算机的物理内存资源。
本次实验中,我们通过模拟实现了一个简单的内存管理模块,具体包括以下功能:(1)定义内存块结构,用于表示内存中的空闲块和已分配块;(2)实现内存分配函数,可以根据参数从内存中分配指定大小的空间,并返回分配的起始地址;(3)实现内存释放函数,可以释放指定地址范围的内存空间,将其标记为空闲块。
3. 文件系统文件系统是操作系统中用于管理文件和存储空间的一种机制。
本次实验中,我们通过手动实现了一个简单的文件系统,具体实现过程如下:(1)定义文件控制块(FCB)结构,用于保存文件的各种属性;(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系统的基本设置,以及系统维护与安全等知识点。
中 南 大 学 《操作系统》实验报告
姓 名: 孙 福 星 专 业 班 级: 软件 1006班 学 号:
完 成 日 期: 进程调度与内存管理 一、 实验目的 在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就续进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。实验模拟实现处理机调度,以加深了解处理机调度的工作,并体会优先级和时间片轮转调度算法的具体实施方法。帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 二、实验要求 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度。 4、可随时增加进程; 5、规定道数,设置后备队列和挂起状态。若内存中进程少于规定道数,可自动从后备队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能用于将指定挂起进程解挂入就绪队列。 6、每次调度后,显示各进程状态。 7、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目内容:起址、长度、状态(未分/空表目) 8、结合以上实验,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置, PCB指针} 9、采用最先适应算法分配主存空间; 10、进程完成后,回收主存,并与相邻空闲分区合并。 11、采用图形界面; 三、实验内容 选择一个调度算法,实现处理机调度。 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 3、主存储器空间的分配和回收。在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。 四、实验原理
该模拟系统采用java语言实现,要实现的功能有新建进程、进程调度、挂起进程、解挂进程、删除进程,道数和时间片大小可以由用户自己调整,有两种调度策略:按优先权调度和按时间片轮转调度。每个进程可能有5种状态:新建(new)、就绪(ready)、运行(running)、阻塞(waiting)、挂起(suspend)。每个状态都有一个队列用来存放处于该状态的进程,不同的调度策略采用不同的队列实现。当创建进程时,如果内存中的进程数还没达到规定道数,则将新建进程插入就绪队列,如果内存中进程数已经达到规定道数,则插到后备队列,后备队列中的进程的状态为new。CPU每次调度时都从就绪队列中取进程,在进程执行过程中如果下一个操作时IO操作,则将进程插入到waiting队列。在系统运行过程中可以执行进程挂起操作,但执行的挂起操作时系统自动暂停运行,在弹出窗口选择要挂起的进程后,将选中的进程从原来的队列中删除并插入到挂起队列。进行解挂操作时将选中的进程从挂起队列中删除并插入该进程原来所处的队列。 按优先级调度: 当选择按优先权调度时,所有队列都采用优先队列,优先队列采用一个有序链表实现,进程的优先权值越大代表优先级越高,优先队列中的进程按优先权从大到小排列,当新进程插入时根据该进程的优先权插入到队列中的合适位置,插入后保持队列按优先权从大到小排列,如果新进程与队列中某个进程优先权值相等,则该新进程插到那个进程后面,以遵循先来先服务的规则。当要从队列中取出进程时总是取队列中第一个进程,因为该进程的优先级最高。 按时间片轮转调度: 当选择按时间片轮转调度时,所有队列都采用先进先出队列,先进先出队列采用一个普通单向链表实现,当新进程插入时插入到队列的末尾,当要取进程时取队首进程,这样就实现了先进先出。 内存管理 该实验基于实验一完成,核心是内存的分配和回收,在实验一的基础上增加内存管理部分,在新建进程的时候增加一个输入内存大小的输入框,在进程进入内存时要分配内存,在进程销毁时要回收内存,如果进入内存时内存不足,则将进程插入到后备队列等待下次调度。系统维护一个内存表,每个表项代表一个空间,每个空间保存了该空间的起始地址和空间大小以及空间使用状态。初始时只有一个空间,当CPU启动时要分配内存,内存分配采用最先适应算法。回收内存时如果有相邻空闲空间,则要进行空闲空间合并。 } }
五、源代码及截图: : public class divDTO { private int divBase; private int length; private int divFlag; public divDTO(int divBase,int length,int divFlag) { = divBase; = divFlag; = length; } public divDTO() { } public void setDivBase(int base) { = base; } public int getDivBase() { return ; }
public void setLength(int length) { = length; } public int getLength() { return ; }
public void setDivFlag(int flag) { = flag; } public int getDivFalg() { return ; } }
: public class PcbDTO { static final int Running = 1; static final int Ready = 2; static final int Waiting = 3; private String processName; private int runTime; private int prority; private int processState; private int base; private int limit; private int pcbFlag; public PcbDTO(String name, int time,int pro,int base,int limit) { = name; = time; = pro; = 0; = limit; = base; } public PcbDTO() { = 0;}
public void setProcessName(String name) { = name; } public String getProcessName() { return processName; }
public void setRunTime(int time) { = time; } public int getRunTime() { return ; }
public void setPrority(int prority) { = prority; } public int getPrority() { return ; }
public void setProcessState(int state) { = state; } public String getProcessState() { String s = new String(); if == 1) { s = "running"; } else if == 2) { s = "ready"; } else if == 3) { s = "waiting"; } return s; } public int getBase() { return ; } public void setBase(int base) { = base; } public void setLimit(int limit) { = limit; } public int getLimit() { return ; }
} 3. import .*; import .*; import .*; import class MainFrame { private JList readyList;
private JList waitingList; private JList jobList; private JButton susButton; private JButton relaxButton; private JButton startButton; private JButton newButton;
private JLabel nameLabel; private JLabel prorityLabel; private JLabel timeLabel; private JLabel jobLabel; private JLabel readyLabel; private JLabel waitingLabel; private JLabel runningLabel; private JLabel spaceLabel; private JLabel divLabel; private JLabel allocLabel;