实验一 操作系统用户接口实验

合集下载

实验一操作系统用户接口

实验一操作系统用户接口

湖北工业大学工程技术学院实验报告课程名称:操作系统实验内容:实验一操作系统用户接口学院名称:工程技术学院专业班级: 11gb软件2班指导教师:贺红艳学生成绩:一、实验目的1、掌握Linux环境下的基本文件处理命令2、掌握Linux环境下的基本管理命令。

二、实验步骤1、Linux环境下的基本文件处理命令(1) ls命令ls命令的语法:ls 选项[-ald] 文件或目录-a 显示所有文件,包括隐藏文件-l 详细信息显示-d 查看目录属性分别执行ls –a /binls –l /binls –ld /bin分析执行结果,并说明显示信息各字段的意义。

执行结果及分析:显示目录bin的所有文件包括隐藏文件。

查看目录bin的详细信息。

详细显示目录的属性。

(2) cd 命令cd命令的语法:cd [目录]两种常见用法:cd 表示切换到根目录cd .. 回到上级目录分别执行cd bincd ..(3) pwd命令显示当前工作目录语法:pwd(4) mkdir 命令创建新目录语法:mkdir [目录名]执行mkdir 命令创建目录test,test1,并使用ls查看。

(5) touch 命令创建空文件语法:touch 文件名执行touch命令在test目录下创建文件newfile1并使用ls 查看文件是否创建成功。

(6) cp 命令语法:cp –R [源文件或目录] [目标文件]cp –R 复制目录执行cp 命令将test目录下newfile1复制到test1中。

写出执行步骤:cd testcp newfile1 /bin/test1(7)rm 命令删除文件或目录语法:rm [-r] [文件或目录]删除文件用:rm 文件名删除目录用:rm –r 目录名使用rm命令删除test1目录和test中的newfile1文件。

写出执行步骤:删除test1目录的newfile1文件:删除test目录的newfile1文件:(8) cat命令显示文件内容语法:cat [文件名]more 命令分页显示文件内容语法:more [文件名]空格(或f)显示下一页回车显示下一行Q(q)退出分别用cat和more命令显示/etc/issue和/etc/services写出实验步骤:cat /etc/issue运行结果:命令为:more /etc/services执行结果:(9)> 和>>> 和>>为输出重定向符号,它们的区别为>>为追加模式。

操作系统实验指导

操作系统实验指导

实验一操作系统用户接口(4学时)实验目的操作系统是控制和管理计算机软、硬件资源的程序的集合,它所追求的目标一是提高资源利用率,二是方便用户使用的。

为方便用户使用,操作系统提供了用户接口和程序接口。

本实验从一般用户的角度通过使用联机用户接口,来快速、有效和安全、可靠地操纵计算机中的各类资源,处理自己的程序,达到初识操作系统。

实验内容1、在Windows XP中,运行命令解释程序cmd.exe,进入Windows XP 字符显式用户界面,使用文件操作命令(type、copy、ren、del )、目录操作命令(dir、md、rd、cd、tree)、磁盘操作命令(format、chkdsk)和输入输出重定向命令(>、>>、<、<<、|)、批命令来认识操作系统为用户提供的各种服务;2、(可选作)通过Windows XP的图形用户接口操纵计算机中的各类资源,处理自己的程序。

实验准备及设备装有Windows XP的计算机系统实验步骤Windows XP 字符显式用户界面:1、运行Windows XP 的命令解释器cmd.exe;2、使用文件操作命令、目录操作命令;3、使用磁盘操作命令;4、输入输出重定向命令的使用;5、使用批命令建立一个批处理文件。

(选做)Windows XP图形用户接口1、运行Windows XP认识桌面、图标、“开始”按钮和任务栏;2、认识窗口、对话框实验结果1、Windows XP 字符显式用户界面:文件操作、目录操作、磁盘操作、输入输出重定向命令使用的结果;用批处理命令建立的批处理文件;2、(选做)Windows XP图形用户接口桌面与图标的概念、桌面上常见的图标的;“开始”按钮和任务栏的内容;窗口的组成、性质;对话框的用途和组成。

实验二处理机管理(4学时)实验目的正确理解提高处理机的利用率及改善系统性能在很大程度上取决于处理机调度性能的好坏,在操作系统中调度的实质是一种资源分配,调度算法是指根据系统的资源分配策略规定的资源分配算法,对不同的系统和系统目标,应采用不的调度算法。

操作系统实验指导书

操作系统实验指导书

操作系统实验指导书实验⼀操作系统⽤户接⼝实验⼀、实验⽬的熟悉操作系统的命令接⼝、图形⽤户接⼝和程序接⼝。

⼆、实验内容:1、使⽤操作系统的命令接⼝。

使⽤Windows常⽤命令:dir 、md、copy、date、help,显⽰这些命令的结果,并解释这些命令的作⽤。

图1-1 命令控制台图1-2 windows常⽤命令图1-3 windows常⽤命令图1-4 windows常⽤命令使⽤图1-5 windows常⽤命令使⽤2、使⽤操作系统的程序接⼝。

VB环境下:编制⼀⼩程序,使其可通过某个系统调⽤来获得os 提供的某种服务,如打开控制⾯板:Shell "rundll32.exe Shell32.dll,Control_RunDLL", 1VC环境下:⽤C语⾔编制⼀个⼩程序,使其可通过Localtime( )系统调⽤来获得OS提供的时间和⽇期。

3、使⽤操作系统的图形⽤户接⼝(略)。

三、思考:OS向⽤户提供的命令接⼝、图形⽤户接⼝和程序接⼝分别适⽤于哪些场合?实验⼆进程创建与撤消⼀、实验⽬的1、加深对进程概念的理解和进程创建与撤消算法;2、进⼀步认识并发执⾏的实质。

⼆、实验内容本实验完成如下三个层次的任务:(1)系统级—以普通⽤户⾝份认识windows的进程管理。

通过windows的“任务管理器”观察进程的状态,进⾏进程的创建、切换和撤销。

(2)语⾔级—以普通程序员⾝份认识⾼级语⾔VC++/Java/VB的进程创建与撤销⼯具。

(3)模拟级—以OS设计师⾝份编程模拟实现进程创建与撤销功能,并在屏幕上观察进程活动的结果。

三、实验步骤1、windows的进程管理当前状态图2-1 windows任务管理器切换前图2-2 windows任务管理器切换后图2-3 windows任务管理器撤销图2-4 windows任务管理器2、VC++进程创建与撤销⼯具Windows所创建的每个进程都从调⽤CreateProcess() API函数开始,该函数的任务是在对象管理器⼦系统内初始化进程对象。

实验一模板(使用操作系统接口)1

实验一模板(使用操作系统接口)1

实验报告(一)一、实验目的通过操作系统命令接口、系统调用函数接口的使用,加深对操作系统三个接口(命令、系统调用、图标-窗口)的理解。

二、实验内容、过程与分析(一)命令接口的使用1、实验内容文件和目录操作。

1)pwd(Print Working Directory)命令查看当前工作目录。

2)cd(Change Directory)命令改变工作目录。

3)ls(LiSt)命令查看当前目录下的文件和子目录。

4)文件操作使用touch命令创建文件;使用gedit编辑器创建文件;使用cat命令查看文件内容;使用more或less命令查看文件内容;使用cp命令复制文件;使用rm命令删除文件。

5)创建目录;使用mkdir命令创建目录;使用rmdir命令删除目录。

……2、实验过程3、实验分析(二)系统调用函数接口的使用1、实验内容使用系统调用函数编写应用程序。

学习以下示例程序3-1(参见《UNIX/Linux程序设计教程》,作者赵克佳、沈志宇),该程序基于系统调用函数open()、close()、read()、write(),实现把一个文件的内容复制到另一个文件中。

要求:a)编译、执行该程序编译程序hello.c: $gcc hello.c –o hello执行程序:$./hello file1 file2 file3b)修改该程序,将文件1的内容复制到文件2和文件3中;对于文件2,每次复制把文件1内容添加到文件2尾(保留文件2原有内容);对于文件3,每次复制用文件1内容覆盖文件3原有内容(不保留文件3原有内容)。

#include "ch03.h"int main (int argc, char **argv){int n, from, to;char buf[1024] ;if (argc != 3) { /* 检查参数个数。

*/printf("Usage : %s from-file to-file\n", argv[0]);exit (1);}if ((from = open (argv[1],O_RDONLY)) < 0) /* 为读而打开文件from */err_exit (argv[1] );/* 以添加方式打开文件to. 若文件不存在,open() 将以方式644(-rw-r--r--)创建它。

接口用法示例实验报告(3篇)

接口用法示例实验报告(3篇)

第1篇一、实验目的1. 理解接口的概念和作用。

2. 掌握接口的基本用法,包括接口的定义、实现和实现类。

3. 通过实际操作,加深对接口的理解和应用。

二、实验环境1. 操作系统:Windows 102. 开发工具:IntelliJ IDEA3. 编程语言:Java三、实验内容1. 接口的基本概念2. 接口的定义与实现3. 接口的多态性4. 接口的应用示例四、实验步骤1. 接口的基本概念(1)打开IntelliJ IDEA,创建一个新的Java项目。

(2)在项目下创建一个包,命名为“com.example”,用于存放实验代码。

(3)在包下创建一个接口,命名为“IAnimal”,用于定义动物的基本行为。

```package com.example;public interface IAnimal {void eat();void sleep();}```2. 接口的定义与实现(1)在“com.example”包下创建一个类,命名为“Dog”,实现“IAnimal”接口。

```package com.example;public class Dog implements IAnimal {@Overridepublic void eat() {System.out.println("狗吃肉");}@Overridepublic void sleep() {System.out.println("狗睡觉");}}```(2)在“com.example”包下创建另一个类,命名为“Cat”,实现“IAnimal”接口。

```package com.example;public class Cat implements IAnimal {@Overridepublic void eat() {System.out.println("猫吃鱼");}@Overridepublic void sleep() {System.out.println("猫睡觉");}}```3. 接口的多态性(1)在主类“Main”中创建一个方法,用于测试接口的多态性。

用户接口实验

用户接口实验

[root@linuxserver root]# cp /usr/src/linux/arch/i386/boot/bzImage
14 /boot/
第15页/共17页
四.编程调用自己创建的系统调 用
#include <linux/unistd.h>
syscall1(char*,mycall,int,ret)
6.3.2 系统调用实验
➢ 一、编程调用一个系统调用fork(),观察结果
➢ 二、编程调用创建的系统调用foo(),观察结果
➢ 三、自己创建一个系统调用mycall(),实现功 能:打印字串到屏幕上
➢ 四、编程调用自己创建的系统调用
6
6.4 实验指导
第7页/共17页
6.4.1 控制台命令接口实验指导
6.2.2 添加系统调用
1.添加源代码 asmlinkage int sys_foo(int x) {
printf("%d\n",x); } 2.连接新的系统调用 # define __NR _name NNN
1
第2页/共17页
# define __NR _foo 222
ENTRY(sys_call_table) .long SYSMBOL_NAME(sys_ni_syscall) .long SYSMBOL_NAME(sys_exit) .long SYSMBOL_NAME(sys_fork) ...
[root@linuxserver root]# make
modules_install
// 加入模块
[root@linuxserver root]# make clean // 清除多余创建的文件
[root@linuxserver root]# make bzImage // 生成可执行内核引导文件

计算机操作系统原理操作系统接口

计算机操作系统原理操作系统接口

《计算机操作系统原理》
实验一操作系统接口
一、实验目的
1.了解操作系统的两类接口;
2.掌握不同操作系统提供的接口服务。

二、实验内容
1.在Windows的命令窗口中完成:
♦用dir命令查看文件列表,用cd命令改变当前目录;
♦用MD命令在D盘根目录下创建OS_DEMO子目录,从另外的目录中复制(copy命令)若干文件到该目录下;
♦用attrib命令更改该目录下的文件属性,如只读、隐藏等,再恢复原属性
2.在Windows的环境下,对文件或文件夹进行新建、复制、删除操作;
3.在Linux的环境下:
♦运用Shell命令语言(LS、CAT、cd、mkdir、rmdir、date)与系统交互;
♦vi编辑器的基本操作:
a) 进入vi :在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
$ vi myfile
b) 编辑文件
在【命令行模式】下按一下字母i就可以进入【插入模式】,就可以开始输入文字了。

c) Insert 的切换
处于【插入模式】时就只能一直输入文字,如果想做删除等编辑操作,就要先按一下[ESC]键转到【命令行模式】再删除文字。

d) 退出vi及保存文件
在【命令行模式】下,
: w filename
: wq (存盘并退出vi)
: q! (不存盘强制退出vi)。

系统接口实验报告

系统接口实验报告

实验名称:系统接口设计与实现实验日期:2023年3月10日实验地点:计算机实验室一、实验目的1. 理解系统接口的概念和作用。

2. 掌握系统接口的设计原则和实现方法。

3. 学会使用常用的接口技术,如API、Web服务等。

4. 提高编程能力和团队协作能力。

二、实验内容1. 系统接口概述2. 系统接口设计3. 系统接口实现4. 系统接口测试三、实验原理系统接口是软件系统中各个模块之间进行交互的桥梁,它定义了模块之间通信的规则和方式。

良好的系统接口设计可以提高系统的可维护性、可扩展性和可复用性。

四、实验步骤1. 系统接口概述首先,我们需要了解系统接口的概念和作用。

系统接口是软件系统中各个模块之间进行交互的桥梁,它定义了模块之间通信的规则和方式。

良好的系统接口设计可以提高系统的可维护性、可扩展性和可复用性。

2. 系统接口设计(1)确定接口需求:根据系统需求分析,确定各个模块之间需要交互的数据和功能。

(2)定义接口规范:根据接口需求,定义接口的输入、输出参数、返回值等。

(3)设计接口协议:根据接口规范,设计接口的通信协议,包括数据格式、传输方式等。

(4)编写接口文档:将接口规范和协议整理成文档,以便其他开发者理解和使用。

3. 系统接口实现(1)选择编程语言:根据项目需求和团队熟悉程度,选择合适的编程语言进行接口实现。

(2)编写接口代码:根据接口规范和协议,编写接口代码,实现模块之间的交互。

(3)测试接口:编写测试用例,对接口进行测试,确保接口功能的正确性和稳定性。

4. 系统接口测试(1)编写测试用例:根据接口规范和协议,编写测试用例,涵盖接口的所有功能。

(2)执行测试用例:使用测试工具或手动执行测试用例,检查接口的输出是否符合预期。

(3)分析测试结果:对测试结果进行分析,找出接口中存在的问题,并进行修复。

五、实验结果与分析1. 实验结果本次实验成功实现了系统接口的设计与实现,包括接口需求分析、接口规范定义、接口协议设计、接口代码编写和接口测试。

接口处理教程实验报告(3篇)

接口处理教程实验报告(3篇)

第1篇一、实验目的1. 理解接口处理的基本概念和流程。

2. 掌握使用PHP编写API接口的方法和步骤。

3. 学习如何使用json-server模拟接口数据。

4. 熟悉使用Postman进行接口测试和自动化测试。

二、实验环境1. 操作系统:Windows 102. 编程语言:PHP3. 开发工具:Visual Studio Code4. API模拟工具:json-server5. 接口测试工具:Postman三、实验内容1. PHP API接口编写(1)创建接口文件首先,我们需要创建一个PHP文件作为API接口,例如`api.php`。

```php<?php// api.php// 设置返回内容为JSON格式header('Content-Type: application/json');```(2)处理请求在`api.php`中,我们需要获取客户端发送的请求,并根据请求类型(GET或POST)进行处理。

```php// 获取请求类型$method = $_SERVER['REQUEST_METHOD'];// 处理GET请求if ($method === 'GET') {// 获取请求参数$name = $_GET['name'];// 模拟从数据库查询用户信息$userInfo = ['name' => '张三','age' => 25,'email'=>'********************'];// 返回JSON数据echo json_encode($userInfo);}// 处理POST请求if ($method === 'POST') {// 获取请求数据$jsonData = file_get_contents('php://input');$userData = json_decode($jsonData, true);// 模拟保存用户信息到数据库// ...// 返回JSON数据echo json_encode(['status' => 'success']); }```2. 使用json-server模拟接口数据(1)安装json-server```bashnpm install -g json-server```(2)创建数据文件创建一个名为`db.json`的文件,并添加以下内容:```json{"users": [{"id": 1,"name": "张三","age": 25,"email":"********************"},{"id": 2,"name": "李四","age": 30,"email":"****************"}]}```(3)启动json-server```bashjson-server --watch db.json```3. 使用Postman进行接口测试(1)测试GET请求在Postman中创建一个新的请求,选择HTTP方法为GET,并设置请求URL为`http://localhost:3000/users`。

操作系统系统接口实验

操作系统系统接口实验

操作系统实验报告一、操作系统接口实验1)实验目的熟悉操作系统的命令接口、图形接口和程序接口。

2)实验内容▪UNIX或LINUX环境:✧熟悉开机登录进入系统、退出系统的过程。

✧使用UNIX或LINUX常用命令以及图形化接口X-Windows。

✧使用C语言编制一个小程序,使其可以通过某个系统调用来获得操作系统的服务。

▪Windows环境:✧熟悉开机登录进入系统、退出系统的过程。

✧熟悉使用命方式启动应用程序的过程、熟悉Windows图形用户接口。

✧编程实现一个操作系统的简单命令解释程序。

✧使用汇编语言编制一个小程序,使其可以通过某些系统调用来获得操作系统的服务。

3)实验分析和思考▪操作系统向用户提供的各种接口分别适用于什么场合?4)实验学时安排6学时,在第一章学习完之后可以进行。

(选做)实验题目(1)命令接口实验利用操作系统的用户接口编写程序实现一个操作系统的简单shell程序,实现对一些简单命令的解释执行。

具体内容包括:✧查阅相关函数system(cmd)的调用方法,掌握它的用法;✧掌握操作系统用户接口的使用方法;✧编写主函数,实现一个微型命令解释程序,该程序可以接受并解释以下命令:⏹dir 列出当前目录⏹copy file1 file2 拷贝文件⏹del filename 删除文件⏹echo string 显示字符串⏹exit 结束、退出(2) 程序接口实验使用DOS系统功能调用进行编程,实现文件操作。

(在DOS下用3ch号功能创建一个文件,3dh号功能打开一个文件,3eh好功能关闭一个文件,3fh号功能读文件,40h号功能写文件。

windows下用CreatFile创建一个文件,CloseHandle关闭文件,WriteFile写文件OpenFile打开文件,还有很多文件操作的api,可以查阅资料)【示例1】用汇编语言编程把输入的信息写到txt文件中。

DATA SEGMENTBUFFER DB 'ABCDEF'FILENAME DB 'A.TXT'EMSG DB 'ERROR!','$'DATA ENDSSTACK1 SEGMENT PARA STACKDW 20H DUP(0)STACK1 ENDSCODE SEGMENTASSUME DS:DATA,SS:STACK1,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV AH,3CH ;3CH号功能,创建文件,也可以用5BH号功能MOV CX,0 ;文件属性LEA DX,FILENAMEINT 21HJZ ERROR ;若CF=1则出错处理MOV BX,AX ;AX中为文件句柄MOV CX,6 ;要写的字节数LEA DX,BUFFERMOV AH,40H ;40H好功能调用,写文件INT 21HJMP END0ERROR:MOV AH,9LEA DX,EMSGINT 21HEND0:MOV AH,4CHINT 21HCODE ENDSEND START改进要求:1)文件未关闭,请在合适位置增加关闭文件功能;2)文件名改为从键盘输入;3)字符串从键盘输入;【示例2】将文本文件内容读入内存并显示在屏幕上。

操作系统原理课内实验指导书

操作系统原理课内实验指导书

操作系统原理课内实验指导书实验一:用户接口实验准备知识为了使用户通过操作系统完成各项管理任务,操作系统必须为用户提供各种接口来实现人机交互。

经典的操作系统理论将操作系统的接口分为控制台命令和系统调用两种。

前者主要提供给计算机的操作人员对计算机进行各种控制;而后者则提供个程序员,使他们可以方便地使用计算机的各种资源。

1.控制台命令接口操作系统向用户提供一组控制台命令,用户可以通过终端输入命令的方式获得操作系统的服务,并由此来控制自己作业的运行。

一般来讲,控制台命令应该包含:一组命令、终端处理程序以及命令解释程序。

1)bash的由来当登录Linux或者打开一个xterm时,当前默认的shell就是bash。

Bash是GNU Project 的shell。

GNU Project是自由软件基金会(Free Software Foundation)的一部分。

它对Linux 下的许多编程工具负责。

Bash(Bourne Again Shell)是自由软件基金会发布的Bourne shell 的兼容程序。

它包含了其他有些shell的许多良好的特性,功能非常的全面。

很多Linux版本都供bash。

2)bash的大致原理bash处理自己的脚本时,先找到需要处理的命令名称,进而在当前用户的默认命令目录中找到对应的命令,这些默认目录一般是/usr/bin、/bin或/sbin。

在执行这些命令时,先使用进程创建系统调用fork(),在使用exex()来执行这些命令。

3)建立bash脚本➢编辑文件可以用最熟悉的编辑器来编辑这个文本文件,比如文件名为script,在shell下输入:$ vi script#! /bin/bashEcho Hello World!然后保存,退出。

➢测试脚本。

使用指令:$ source script➢更改脚本属性使用指令:$ chmod a+x script将脚本程序设置为可执行。

➢执行脚本使用指令:$ ./script4)关键字参考Echo 在终端上显示Bash 特殊变量1~9,保存当前进程或脚本的前9个参数。

实验一 操作系统用户接口实验

实验一  操作系统用户接口实验

窍门:目录中的文件太多,在一个屏幕上没有 办法把它们都显示出来。比如/usr/bin目录就是 这种情况,这时需要给ls命令加上“|more”选项。 按照“ls /usr/bin |more”的格式输入命令。用户 将看到屏幕以每次一页的方式显示usr/bin目录 中的内容。 直接执行ls命令,不加任何参数,显示当前目录 中的文件。
三、vi文本编辑器程序

vi编辑器是一个小巧但功能强大的程序。许多人 在最初的时候认为它很难用,因为它的编辑命 令都是用一两个字母来表示的;但是只要你习 惯了使用vi ,使用它进行编辑工作也会十分迅 速。其原因在于这个编辑器只是一个非常短小 的程序,因此它只需要使用很少的内存;同时 其编辑命令很简短,又都可以通过键盘快速输 入,所以基本上用不着在键盘和鼠标之间来回 切换。

如果你有两个或少数几个C源文件,也可以方便 地利用GCC编译、连接并生成可执行文件。例 如,假设你有两个源文件 main.c 和 factorial.c 两个源文件,现在要编译生成一个计算阶乘的 程序。
清单 factorial.c
-----------------------
#include <stdio.h> #include <stdlib.h> int factorial (int n) { if (n <= 1) return 1; else return factorial (n - 1) * n; }

输入“vi filename” 编辑或建立一个文件。vi编 辑器有三种基本的模式:
输入模式(文本编辑模式) :这个模式是通过在
命令模式按下“ i”键进入。 命令模式:这是用户输入单键命令的模式。在其 他模式中按下ESC键就可以进入到命令模式。 末行模式:从命令模式输入一个冒号( :)就可 以进入这个模式。在这里用户可以输入更加复杂 的命令,通常是一些文件操作命令。

操作系统课内实验报告

操作系统课内实验报告

.. 西安交通大学实验报告操作系统实验报告2130505133计算机36班操作系统实验实验一:用户接口实验实验目的1)理解面向操作命令的接口Shell。

2)学会简单的shell编码。

3)理解操作系统调用的运行机制。

4)掌握创建系统调用的方法。

操作系统给用户提供了命令接口和程序接口(系统调用)两种操作方式。

用户接口实验也因此而分为两大部分。

首先要熟悉Linux的基本操作命令,并在此基础上学会简单的shell 编程方法。

然后通过想Linux内核添加一个自己设计的系统调用,来理解系统调用的实现方法和运行机制。

在本次实验中,最具有吸引力的地方是:通过内核编译,将一组源代码变成操作系统的内核,并由此重新引导系统,这对我们初步了解操作系统的生成过程极为有利。

实验内容1)控制台命令接口实验该实验是通过“几种操作系统的控制台命令”、“终端处理程序”、“命令解释程序”和“Linux操作系统的bash”来让实验者理解面向操作命令的接口shell和进行简单的shell编程。

➢查看bash版本。

在shell 提示符下输入:$echo $BASH_VERSION我们的版本是4.3.42(1)-release(2)建立bash 脚本,输出Hello word在编辑器中输入以下内容#!/bin/bashecho Hello World!执行脚本使用指令:$./script➢编写bash脚本,统计/my目录下c语言文件的个数通过bash 脚本,可以有多种方式实现这个功能,而使用函数是其中个一个选择。

在使用函数之前,必须先定义函数。

进入自己的工作目录,编写名为count 的文件脚本程序:#! /bin/bashfunction count{echo –n " Number of matches for $1: " #接收程序的第一个参数ls $1|wc –l #对子程序的第一个参数所在的目录进行操作}将count 文件复制到当前目录下,然后在当前目录下建立文件夹,在my 目录下建立几个c 文件,以便用来进行测试2)系统调用实验该实验是通过实验者对“Linux操作系统的系统调用机制”的进一步了解来理解操作系统调用的运行机制;同时通过“自己创建一个系统调用mycall()”和“编程调用自己创建的系统调用”进一步掌握创建和调用系统调用的方法。

实验一 操作系统windows装置及用户接口

实验一 操作系统windows装置及用户接口

实验一操作系统安装及用户接口一、实验目的熟悉Windows//Linux操作系统的安装过程与安装方法,并掌握该操作系统所提供的用户接口环境,并为后续实验做好编程环境准备。

二、实验内容1、熟悉Windows//Linux操作系统的安装过程与安装方法,并掌握该操作系统所提供的用户接口环境,通过系统提供的用户管理程序、查看系统中的用户情况、进程、线程、内存使用情况等,学会使用它进行监视进程的状况、系统资源的使用情况及用户情况。

并为后续实验做好编程环境准备。

2、用C语言编写一小段程序,使其可以通过某个系统调用来获得OS提供的某种服务。

三、实验要求1.了解所安装的操作系统对软硬件资源的具体要求;2.机器最低硬件配置要求;3.操作系统所提供的用户接口环境的熟悉;4.了解主要BIOS CMOS参数的含义及其设置方法;5.掌握程序编写中系统调用的方法。

四、主要实验步骤1、可以通过Vmware workstation虚拟机来模拟并记录安装Windows和Linux的过程,主要要准备光盘(虚拟机也可使用光盘镜像ISO文件或精灵虚拟光驱),若计算机已经装有一个操作系统,则在安装之前要注意:如果是使用光盘用电脑自带光驱安装,则安装之前必须设定计算机的BIOS,让计算机从光驱启动;若是使用USB光驱或者是U盘引导,则要设定BIOS使计算机从USB接口启动。

安装系统主要需要输入序列号,设定管理员及使用者姓名和身份密码。

用户可以选择要安装的系统程序(Linux为软件包),或者也可以在安装完后在控制面板的添加/删除程序中选择。

安装方法一般来说使用光盘直接安装,将光盘放入光驱中,没有光驱的电脑可以使用USB光驱或者使用U盘安装。

2、熟悉查看用户的接口环境可以使用系统自带的管理程序,操作如下:“右击我的电脑”——“管理”——“设备管理器”,也可以“右击我的电脑”——“属性”——“硬件”——“设备管理器”,进入设备管理器可以看到计算机的设备情况,包括计算机的各个接口。

操作系统用户接口实验

操作系统用户接口实验

实验一操作系统用户接口实验一、实验目的:1、熟悉操作系统的命令接口2、图形接口和程序接口二、实验内容:1、使用linux常用命令:pwd、ls 、cd、mkdir、copy、date,显示这些命令的结果,并解释这些命令的作用;2、用C语言编制一个程序,使其可通过Localtime系统调用来获得OS提供的时间日期三、实验要求:在Linux操作系统下完成。

四、程序和实验结果:#include<stdio.h>#include<time.h>main(){char *wday[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};time_t timep;struct tm *p;time(&timep); /*取得当地时间*/p=localtime(&timep); /*转换时间*/printf ("%d%d%d ", (1900+p->tm_year),( 1+p->tm_mon),p->tm_mday);printf("%s%d:%d:%d\n", wday[p->tm_wday],p->tm_hour,p->tm_min, p->tm_sec);}五、实验心得:通过实验,我熟悉了使用linux常用命令(pwd、ls 、cd、mkdir、copy、date),进一步了解了这些命令的作用。

同时也学会了用C语言编制一个小程序,使其可通过Localtime( )系统调用来获得OS提供的时间和日期。

在输入程序过程中,一个字母输入错误就得不到正确的实验结果,在实验中我不仅熟悉操作系统的命令接口图形接口和程序接口,更懂得了细节决定成败的道理。

操作系统-上机实验-接口

操作系统-上机实验-接口

实验一Linux 接口实验姓名:班级:学号:地点:时间:成绩:一、实验内容在Linux环境下练习部分Linux shell 命令,共15小题。

提示:可参考课本p36 2.3.1节。

二、实验目的熟悉Linux Shell 基本常用命令。

三、实验环境登陆Linux虚拟机,进入Linux shell,提示符为$,表示普通用户提示符。

四、实验题目1、使用pwd命令,并说明pwd功能意义。

功能:2、使用cd ~ 和cd ..命令,查看结果,并说明cd ~ 和cd ..的功能意义。

功能意义:3、使用ls –al命令,查看结果并解释ls –al命令的功能意义。

功能意义:4、使用man命令查看mkdir命令的联机帮助文件,写出命令。

命令:5、在当前目录下创建一个子目录,名为自己名字的缩写(如:wm),再在该子目录下创建一个目录interface。

写出相关命令。

提示使用“mkdir”命令创建子目录,用“cd”命令进入该子目录。

命令:6、在interface目录下使用vim或vi创建一个hello.c源文件,并使用gcc编译链接,运行hello,查看结果。

(备注:hello.c文件内容自定),写出命令。

命令:7、在interface目录下创建子目录temp,将hello.c拷贝到temp目录下,写出命令。

命令:8、删除temp目录下的文件hello.c,写出命令。

命令:9、使用mv -i *.c /interface/temp 命令(备注:此命令若提示出错,请自行修改实现),并说明该命令的意义。

命令:功能意义:10、使用whereis mv命令,并说明whereis的功能意义。

功能意义:11、显示系统时间。

命令:12、查看登录系统的所有用户,并使用ping命令查看某一用户是否正常。

命令:13、实现课本p40 环境变量例子命令:14、实现cat file1 file2 |wc,并对命令进行功能解释(提示:此命令可正确运行吗?若不行,修改使之正确运行,参见课本p42 的4)),写出相应命令。

西安交通大学操作系统课内实验报告全解

西安交通大学操作系统课内实验报告全解

西安交通大学实验报告——操作系统原理课内实验姓名:班级:学号:实验一用户接口实验一、实验目的1、理解并掌握面向操作命令的接口 Shell,学会简单的shell编码。

2、理解操作系统调用的运转体制,掌握创立系统调用的方法。

二、实验内容1、控制台命令接口实验理解面向操作命令的接口shell和进行简单的shell编程。

该实验是经过“几种操作系统的控制台命令”、“终端办理程序”、“命令解说程序”和“Linux操作系统的bash”来让实验者理解面向操作命令的接口shell和进行简单的shell 编程。

查察bash版本。

编写bash脚本,统计/my目录下c语言文件的个数2)系统调用实验。

2、系统调用实验理解操作系统调用的运转体制。

该实验是经过实验者对“Linux操作系统的系统调用体制”的进一步认识来理解操作调用的运转体制;同时经过“自己创立一个系统调用mycall()”和“编程调用自己的系统调用”进一步掌握创立和调用系统调用的方法。

编程调用一个系统调用fork(),察看结果。

编程调用创立的系统调用foo(),察看结果。

自己创立一个系统调用mycall(),实现功能:显示字符串到屏幕上。

编程调用自己创立的系统调用。

系统创立三、实验准备为了使用户经过操作系统达成各项管理任务,操作系统一定为用户供应各样接口来实现人机交互。

经典的操作系统理论将操作系统的接口分为控制台命令和系统调用两种。

前者主要供应给计算机的操作人员对计算机进行各样控制;尔后者则供应个程序员,使他们能够方便地使用计算机的各样资源。

四、实验步骤及结果1、控制台命令接口实验1)查察bash版本操作:在shell提示符下输入:$echo$BASH_VERSION结果:版本是(1)-release2)成立bash脚本,输出Helloword操作:在编写器中输入以下内容#!/bin/bashechoHelloWorld!结果:操作:履行脚本使用指令:$./text结果:(3)编写bash脚本:统计/my目录下c语言文件的个数经过bash脚本,能够有多种方式实现这个功能,而使用函数是此中个一个选择。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

窍门:目录中的文件太多,在一个屏幕上没有 办法把它们都显示出来。比如/usr/bin目录就是 这种情况,这时需要给ls命令加上“|more”选项。 按照“ls /usr/bin |more”的格式输入命令。用户 将看到屏幕以每次一页的方式显示usr/bin目录 中的内容。 直接执行ls命令,不加任何参数,显示当前目录 中的文件。
常用命令(末行模式下)
:wq 保存并退出文件 :w filename 另存为filename :q! 退出并不保存所做的修改 :set nu 每一行前出现行号 :set nonu 不显示行号 :n1,n2 co n3 将n1-n2的所有行复制到n3行之后 :n1,n2 m n3 将n1-n2的所有行移动到n3行之后 :n1,n2 d 删除n1-n2的所有行
实验

【实验类型】验证性实验 【目的要求】熟悉操作系统的命令接口、图形接口和程 序接口。 【内容提要】 1、熟悉开机后登录进入Linux系统和退出系统的过程。 2、使用Linux常用命令以及图形化接口X-Window。 3、用C语言编制一小程序,使其可通过某个系统调用来 获得OS提供的某种服务。

/proc 存放存储进程和系统信息 /root 超级用户的主目录 /sbin 存放系统管理程序 /tmp 存放临时文件的目录 /usr 包含了一般不需要修改的应用程序,命令程序 文件、程序库、手册和其它文档。 /var 包含系统产生的经常变化的文件,例如打印机、 邮件、新闻等假脱机目录、日志文件、格式化后的 手册页以及一些应用程序的数据文件等等。建议单 独的放在一个分区。
清单 main.c
-----------------------
#include <stdio.h> #include <stdlib.h> int factorial (int n); int main (int argc, char **argv) { int n; if (argc < 2) { printf ("Usage: %s n\n", argv [0]); return -1; }
一、列出目录的内容清单

ls命令列出某个目录中的内容。这个命令有许多 的命令行参数。其中最常用的一些列出在表5 - 1 中。最常使用的组合之一是ls -la,这个命令格 式将列出某个目录中包括隐藏文件在内的全部 内。
ls命令常用的命令行参数使用方法: a:列出全部的文件; c:列出文件上次修改使的日期 l:以长格式列出目录中的内容,其中包括下面 的信息:存取权限、文件的链接个数或者目录 中文件的个数、所有者、分组、以字节计算的 文件长度、建立日期和文件名。
GCC可同时用来编译C程序和C++ 程序。一般 来说,C 编译器通过源文件的后缀名来判断是C 程序还是 C++ 程序。在 Linux 中,C 源文件的 后缀名为 .c,而 C++ 源文件的后缀名为 .C 或 .cpp。 但是,gcc 命令只能编译 C++ 源文件,而不能 自动和 C++ 程序使用的库连接。因此,通常使 用 g++ 命令来完成 C++ 程序的编译和连接,该 程序会自动调用 gcc 实现编译。假设我们有一个 如下的 C++ 源文件(hello.C):

二、切换目录路径
使用cd命令切换目录路径。有两种使用cd命令 的不同方法。一个方法是直接切换目录路径; 另外一个是相对切换目录路径。 1. 使用cd命令直接切换目录路径 直接切换到某个目录地址是一个很简单的操作 过程。使用cd /path的格式就可以。举例来说, 如果想从当前目录/var/spool/中直接切换到目录 /usr/bin中去,直接输入命令“cd /usr/bin”即可。
else { n = atoi (argv[1]); printf ("Factorial of %d is %d.\n", n, factorial (n)); } return 0;
} 利用如下命令可编译生成可执行文件,并执行程序: 编译:gcc -o factorial main.c factorial.c 执行:./factorial 5 Factorial of 5 is 120.

#include <iostream.h> void main (void) { cout << "Hello, world!" << endl; } 则可以如下调用 g++ 命令编译、连接并生成可 执行文件: 编译:g++ -o hello hello.C 执行:./hello Hello, world!


典型的/usr目录如下:
/X11R6 存放X window系统 /bin 存放增加的用户程序 /dict 存放字典 /doc 存放追加的文档 /etc 存放设置文件 /games 存放游戏和教学文件 /include 存放C开发工具的头文件 /info 存放GNU信息文件 /lib 存放库文件

常用命令(命令模式下)
nyy 复制从当前行开始的n行到缓冲区 p 粘贴 ndd 删除从当前行开始的n行 ZZ存盘退出

四、编译工具GCC

Linux 中最重要的软件开发工具是GCC。GCC 是GNU的C和C++ 编译器。实际上,GCC 能够 编译三种语言:C、C++ 和 Object C(C语言的 一种面向对象扩展)。利用 gcc 命令可同时编译 并连接 C 和 C++ 源程序。
Linux使用入门

实验准备:
登陆:用户名root,密码123456。
创建新用户:“开始”-“系统设置”-“用户
和组群”。 打开终端:“开始”-“系统工具”-“终端”。
图 形 界 面 下 使 用 命 令 行 方 法 一
图 形 界 面 下 使 用 命 令 行 方 法 二
显示当前目录 切换到上级目录 列出当前目录下的内容 切换到usr目录

如果你有两个或少数几个C源文件,也可以方便 地利用GCC编译、连接并生成可执行文件。例 如,假设你有两个源文件 main.c 和 factorial.c 两个源文件,现在要编译生成一个计算阶乘的 程序。
清单 factorial.c
-----------------------
#include <stdio.h> #include <stdlib.h> int factorial (int n) { if (n <= 1) return 1; else return factorial (n - 1) * n; }
三、vi文本编辑器程序

vi编辑器是一个小巧但功能强大的程序。许多人 在最初的时候认为它很难用,因为它的编辑命 令都是用一两个字母来表示的;但是只要你习 惯了使用vi ,使用它进行编辑工作也会十分迅 速。其原因在于这个编辑器只是一个非常短小 的程序,因此它只需要使用很少的内存;同时 其编辑命令很简短,又都可以通过键盘快速输 入,所以基本上用不着在键盘和鼠标之间来回 切换。

2. 使用cd命令相对切换目录路径 根据当前所处的位置和想去的地方,可以通过 几种不同的方法相对地切换目录路径。如果只 是想移动到目录结构的上一级去,可以输入 “cd..”命令。举例来说,这个命令可以把你从 当前目录/var/spool带到目录/var中去。更进一步 地说,输入“cd ../..”命令将把你从目录 /var/spool带到根目录“/”中去。因为在根目录 上没有更高一级的目录结构了,所以在目录/var /spool中输入“cd../../..”命令还是把你从目录/var /spool带到根目录而已。“..”是一个指向自身 的目录索引。

/local 存放本地产生的增加的应用程序 /man 存放在线帮助文件 /sbin 存放增加的管理程序 /share 存放结构独立的数据 /src 存放程序的源代码 由于/usr中的文件不和特定的计算机相关,也不会 在通常使用中修改,因此可以通过网络共享这个目 录(文件系统),这样,当管理员安装了新的软件 之后,所有共享这一文件系统的计算机均可以使用 新的软件。
五、Linux目录结构
/ 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目 录中 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统,我们常把软驱和光 驱挂装在这里的floppy和cdrom子目录下。

输入“vi filename” 编辑或建立一个文件。vi编 辑器有三种基本的模式:
输入模式(文本编辑模式) :这个模式是通过在
命令模式按下“ i”键进入。 命令模式:这是用户输入单键命令的模式。在其 他模式中按下ESC键就可以进入到命令模式。 末行模式:从命令模式输入一个冒号( :)就可 以进入这个模式。在这里用户可以输入更加复杂 的命令,通常是一些文件操作命令。
相关文档
最新文档