当前位置: 首页 > news >正文

操作系统实训复习笔记(2)

目录

Linux操作系统(认识+记忆)

(1)Linux 文件系统是树形层次结构

(2)Linux 用户介绍

(3)Linux 常用命令介绍

(4)ls命令

(5)Linux文件操作之创建文件,删除文件。

(6)Linux 查询命令帮助语句

Linux之进程管理— (理解+记忆)

(1)获取进程的函数

(2)fork()函数创建进程

(3)进程创建——vfork()函数

(4)进程的终止


作者本人的期末(计算机科学与技术)操作系统实训复习笔记!

Linux操作系统(认识+记忆

(1)Linux 文件系统是树形层次结构

具体如下

(2)Linux 用户介绍
  • 管理员( root )登录系统后默认目录为 /root

  • 普通用户登录系统后默认目录为:/home/username ,其中 username 为用户名。

(3)Linux 常用命令介绍
  • " cd ":切换当前目录。
  • " pwd ":显示当前所在目录。
  • " cd ..  ":返回上级目录。(若当前目录为"/",则执行完后还在"/";".."为上级目录的意思)(重点
  • " cd ../.. " 返回上两级目录。
(4)ls命令
  • " ls(list) ":列出指定目录列表信息,如果没有参数默认列出当前目录下的所有文件和文件夹(隐藏文件和文件夹除外)。
  • " -l ":以长格式显示目录下的内容列表。
  • " -a ":显示所有文件和文件夹(包括隐藏文件/文件夹)。

(5)Linux文件操作之创建文件,删除文件。
  • Linux 中创建文件夹命令是:mkdir
  • Linux 中创建文件的常用命令是:touch
  • Linux 中常用的删除文件的命令是:rm
  • Linux 文件和文件夹拷贝:cp [命令选项] 源文件 目的文件。
  • Linux 文件和文件夹移动/重命名:mv [命令选项] 源文件 目标文件。
  • 如将 newfile 剪切到 newdir 目录下,并重新命名为 newfileCpy。其操作命令:mv newfile newdir/newfileCpy 

(6)Linux 查询命令帮助语句
  • Linux 中使用 " man " 命令来查询命令的帮助文件。
  • 命令格式:man [章节] command
  • man包含9个章节,章节用数字表示,分别是:

  1. 用户命令
  2. 系统调用
  3. C库调用
  4. 设备文件及特殊文件
  5. 配置文件格式
  6. 游戏
  7. 杂项
  8. 管理类的命令
  9. Linux 内核API

Linux之进程管理— (理解+记忆

(1)获取进程的函数
  • 获取父进程的进程ID的系统调用函数是:" getppid() "。 
  • 获取进程本身的进程ID的系统调用函数是" getpid() "。

(2)fork()函数创建进程
  • 函数格式:pid_t fork(void)。(返回的参数是这个格式(所以设置变量时:pid_t pid))
  • 注意fork()函数调用将执行两次返回,它将从父进程和子进程中分别返回。从父进程返回时的返回值为子进程的 PID,,而从子进程返回时的返回值为0,并且返回都将执行fork之后的语句

(3)进程创建——vfork()函数
  • 由于 " vfork()函数 " 创建的子进程和父进程共享所有的数据(栈、堆等等),因此,采用它时创建的子进程必须使用:" exit " 正常退出,不能用 " return "来 。
  • exit函数是用来结束正在运行的整个程序,exit是系统调用级别,它表示一个进程的结束。而return 是语言级别的,它表示调用堆栈的返回。

(4)进程的终止
  • exit()函数是标准C库中提供的函数,它用来终止正在运行的程序,并且关闭所有I/O标准流。
  • 函数格式:void exit(int status/(void) ) 。
  • _exit()函数也可用于结束一个进程,与exit函数不同的是,_exit不会关闭所有I/O标准流
  • atexit()函数格式: int atexit (void (*function)(void))。
  • atexit()函数的function参数是一个函数指针,指向无返回值和无参数的函数。
  • atexit()函数调用成功返回0,调用失败返回一个非零值。
  • 意思就是它里面的参数是一个退出函数(如:exit() )

 

http://www.lryc.cn/news/382707.html

相关文章:

  • 北邮《计算机网络》英文选择题课堂小测
  • kafka 集群安全认证机制的设计实现
  • pandas保存成CSV格式时数据换行:SQL的REPLACE函数过滤掉数据的回车符
  • 紧贴国家大战略需求,聚焦当前行业热点-海云安D10入选第四届香蜜湖金融科技创新奖拟奖项目
  • 构建 Linux 内核指南
  • Elasticsearch的快照
  • C/C++混合编译说明
  • 三种方式实现人车流统计(yolov5+opencv+deepsort+bytetrack+iou)
  • (四十四)Vue Router的命名路由和路由组件传参
  • EXCEL表格怎么批量删除日期后的时间?
  • 乌班图Ubuntu 24.04 SSH Server 修改默认端口重启无效
  • QT MQTT (二)编译与集成
  • (上位机APP开发)调用华为云属性修改API接口修改设备属性
  • 爆火的儿童绘本如何用AI制作?一文解锁从制作到变现的全流程!
  • Go interface{}类型转换
  • 利用opencv自带的Haar级联分类器模型
  • 国产USB音频转换芯片CL7016C 支持国美标线控USB Type-C音频编解码器
  • 【linux网络(六)】IP协议详解
  • CesiumJS【Basic】- #012添加点线面(entity方式)
  • 【Redis】内存回收和内存淘汰机制
  • PyTorch实战:借助torchviz可视化计算图与梯度传递
  • 【软件测试】软件测试入门
  • Windows操作防火墙命令
  • 二维数组的知识
  • HR3.0时代,人力资本效能如何进化?| 易搭云DHR
  • R语言做图
  • 跟着我一步两步三步,用开源方式将AI带入企业
  • 天途重磅推出无人机教管平台3.1版及飞课APP
  • 虚幻引擎 Gerstner Waves -GPU Gems 从物理模型中实现有效的水体模拟
  • Labview_网络流