linux操作系统应用实训报告

操作系统实验报告(Linux版)  网络142潘豹  实验一观察Linux进程状态  一、实验目的  在本实验中学习Linux操作系统的进程状态,并通过编写一些简单代码来观察各种情况下,Linux进程的状态,进一步理解进程的状态及其转换机制。  二、实验环境  硬件环境:计算机一台,局域网环境;  软件环境:LinuxUbuntu操作系统,gcc编译器。  查看“不可中断阻塞”状态  创建一个C程序,如uninter_,让其睡眠30s  代码:  #include  #include  intmain()  {  inti=0,j=0,k=0;  for(i=0;i;>  #include  intmain()  {  sleep(30);  return;  }  实验结果:  查看“不可中断阻塞”状态  创建一个C程序,如uninter_,让其睡眠30s  编译链接,后台运行该程序,并使用ps命令查看运行状态  代码:  #include  #include  intmain()  {  if(vfork()==0)  {  sleep(300);  return;  }  }  实验结果:  查看“僵尸”进程  创建一个C程序,如zombie_,在其中创建一个子进程,并让子进程迅速结束,而父进程陷入阻塞  编译链接,后台运行该程序,并使用ps命令查看运行状态  代码:  #include  #incldue  intmain()  {  if(fork())  {  sleep(300);  }  }  实验结果:  实验二观察Linux进程/线程的异步并发执  行  一、实验目的  通过本实验学习如何创建Linux进程及线程,通过实验,观察Linux进程及线程的异步执行。理解进程及线程的区别及特性,进一步理解进程是资源分配单位,线程是独立调度单位。  二、实验环境  硬件环境:计算机一台,局域网环境;  软件环境:LinuxUbuntu操作系统,gcc编译器。  三、实验内容和步骤  1、进程异步并发执行  编写一个C语言程序,该程序首先初始化一个count变量为1,然后使用fork函数创建两个子进程,每个子进程对count加1后,显示“Iamson,count=x”或“Iamdaughter,count=x”,父进程对count加1之后,显示“Iamfather,count=x”,其中x使用count值代替。最后父进程使用waitpid等待两个子进程结束之后退出。  编译连接后,多次运行该程序,观察屏幕上显示结果的顺序性,直到出现不一样的情况为止,并观察每行打印结果中count的值。  代码:  #include  #include  intmain()  {  pid_tson_pid,daughter_pid;  intcount=1;  son_pid=fork();  if(son_pid==0)  {  count++;  printf("iamson,count=%d\n",count);  }  else  {  daughter_pid=fork();  if(daughter_pid==0)  {  count++;  printf("iamdaughter,count=%d\n",count);  }  else  {  count++;  printf("iamfather,count=%d\n",count);  waitpid(son_pid,NULL,0);  waitpid(daughter_pid,NULL,0);  }  }  }  2、线程异步并发执行  编写一个C语言程序,该程序首先初始化一个count变量为1,然后使用pthread_create函数创建两个线程,每个线程对count加1后,显示“Iamson,count=x”或“Iamdaughter,count=x”,父进程对count加1之后,显示“Iamfather,count=x”,其中x使用count值代替。最后父进程使用pthread_join等待两个线程结束之后退出。  实验Linuxshell基本命令使用  实验目的:  熟悉Linux操作系统环境,掌握Linux的基本命令。  实验提示:  1、Linux命令行的语法结构:  $command[[-]option(s)][optionargument(s)][commandargument(s)]含义:  ?$:lin

linux操作系统应用实训,linux操作系统应用实训报告.docx相关推荐

  1. 将 CentOS 8 操作系统迁移到 Oracle Linux

    Oracle Linux 是 CentOS 8 的另一种替代方案.在本文中,将介绍如何将现有操作系统迁移到 Oracle Linux. 什么是Oracle Linux? Oracle Linux 是从 ...

  2. Linux运维基础(硬件和操作系统)

    VMware Workstation的使用: 虚拟机 虚拟计算机 在一个主机上,软件+硬件模拟出的硬件设备,然后在虚拟出来的设备上安装系统,等同于在物理机上的操作! 现代计算机设备的组成部分: 运算器 ...

  3. 【Linux 内核】Linux 操作系统结构 ( Linux 内核在操作系统中的层级 | Linux 内核子系统及关系 | 进程调度 | 内存管理 | 虚拟文件系统 | 网络管理 | 进程间通信 )

    文章目录 一.Linux 内核在操作系统中的层级 二.Linux 内核子系统 三.Linux 内核子系统之间的关系 一.Linux 内核在操作系统中的层级 Linux 内核 所在层级 : 整个计算机系 ...

  4. linux课程教学设计,《LINUX操作系统》课程整体教学设计.doc

    <LINUX操作系统>课程整体教学设计 ( 2014-2015 学年 第1学期) 一.管理信息 课程名称:LINUX操作系统 课程代码: 学分3 学时:54 课程类型:物联网专业(或专业群 ...

  5. linux登出系统,讲解Linux操作系统进入与退出系统方法

    随着Linux操作系统崛起,导致很多人在自己的电脑中舍弃了微软,都选择了Linux操作系统.于是很多人开始学习Linux操作系统,如果你是个初学者,这里你介绍Linux操作系统的一些知识,比如说进入与 ...

  6. Kali Linux渗透测试实战 2.2 操作系统指纹识别

    目录 2.2 操作系统指纹识别... 1 2.2.1 Banner抓取... 1 2.2.2 TCP 和 ICMP 常规指纹识别技术... 3 TCP数据报格式... 4 ICMP首部格式... 5 ...

  7. linux操作系统原理_Linux内核分析-操作系统是如何工作的(二)

    linux操作系统的主要构架如图1所示,我们知道,操作系统是通过管理CPU进程.存储器.文件系统.设备驱动.以及网络接口等相关部分来工作的,我们这里主要是通过分析关于CPU的操作即进程的管理执行来分析 ...

  8. 不是linux内核的国产系统,国产操作系统都是山寨Windows的?为何用Linux内核?

    原标题:国产操作系统都是山寨Windows的?为何用Linux内核? 近年来,国产操作系统不断更新迭代,优化完善,性能更加稳定,软硬件兼容性更强,也得到了越来越多用户的关注,常用软件越来越多.支持多种 ...

  9. linux操作系统学什么,Linux学习-第一天-什么是操作系统

    Linux学习--第一天--什么是操作系统? 第一章 什么是Linux 1.1 什么是Linux 1.1.1 计算机:计算的辅助工具 计算机必须要有的组件: 输入单元:如鼠标.键盘.卡片阅读器机,等等 ...

最新文章

  1. 数据结构与算法:02 C#语言基本语法结构
  2. Python用requests完成最简单的爬虫
  3. sap信贷管理的操作流程
  4. 图像增强:多尺度的图像细节提升(multi-scale detail boosting)实现方法
  5. Java多线程初学者指南(12):使用Synchronized块同步变量
  6. 文件下载至storage_如何防止Storage Sense在Windows 10上删除下载的文件
  7. linux下tomcat无法显示图片验证码
  8. Windows Server 2008 R2 安全加固
  9. Scrapy框架实现爬虫
  10. Window+Java环境证书生成说明,pfx证书已经生成
  11. jupyter notebook 修改默认文件夹
  12. 《文献管理与信息分析》速看提问
  13. Skype for Business 2015全新部署_07.前端安装01
  14. 这款神器,IDM随意下载任意网页音频视频文件!
  15. php opc数据,OPC连接获取数据
  16. 计算机硬件系统储存包括那些,硬件系统包括什么
  17. Python循环读取文件夹内视频
  18. 数据库实验一 熟悉数据库管理系统环境及SQL定义语言
  19. Laragon 添加MongoDB服务
  20. 莫队算法 ( MO's algorithm )

热门文章

  1. 旋转矩阵的应用:已知旋转前后的点坐标计算旋转中心坐标
  2. CTF之懵懂时期系列---文件上传
  3. Cuteftp连接虚拟机Centos7
  4. win10查询计算机ip和用户名和密码,Win10怎么查看ip地址_Win10查看本机ip地址-192路由网...
  5. ValueError: Invalid parameter
  6. pandas中的dropna()方法解析
  7. JavaEE心得体会
  8. spotify使用教程_如何在iPhone上的Siri中使用Spotify
  9. python哈姆雷特词频统计_【Python】哈姆雷特字数统计
  10. 【自学笔记】尚硅谷数据结构与算法Chapter 1 数据结构与算法概述