【Linux 学习】进程优先级和命令行参数!

news2024/11/25 11:43:53

1. 什么是优先级?

指定进程获取某种资源(CPU)的先后顺序;

Linux 中优先级数字越小,优先级越高;

在这里插入图片描述
在这里插入图片描述

1.1 优先级和权限的区别?

权限 : 能不能做

优先级: 已经能了,但是获取资源的顺序有差别


1.2 为什么要有优先级呢?

系统中访问的资源(CPU)有限,硬件资源有限(学校窗口打饭的例子);

肌饿问题的存在;
在这里插入图片描述

2. 优先级特点和查看方式

  • 批量化修改指令
    在这里插入图片描述
    2.1 指令 : ps - l 和 ps - al

ps -l 显示当前终端下用户启动的进程

ps -al 查看全部的

2.2 进程 PRI 和 NI
在这里插入图片描述

因为当前的进程可能在被调度,被调度的时候优先级更改会影响当前的调度,所以时间片用完后,在下一轮的调度中再对优先级进行修改

2.3 优先级进行调整

用 top 命令 (还可以直接用 renice 指令)

进入top后按“r”–>输入进程PID–>输入nice值

  • nice 的调整是有范围限制的 [-20,19] 40个数字进行调整,如果 nice 值为 -100 时,则会自动为 -20;
  • 为什么要有范围呢? 因为如果 nice 值任意调整,如果调整到无穷大,则会影响CPU的调度;
  • 注意: 每次进程调整的优先级都是从 80 开始调整的;

  • 注意:❗ 优先级不要轻易调整

2.4 并发,竞争

竞争性: 系统进程数目众多,而CPU资源只有少量,甚至1个,所以进程之间是具有竞争属性的。为了高
效完成任务,更合理竞争相关资源,便具有了优先级 ( 键盘 鼠标 只有一个,竞争这些资源);

独立性: 多进程运行,需要独享各种资源,多进程运行期间互不干扰;

并行: 多个进程在多个CPU下分别,同时进行运行,这称之为并行;

并发: 多个进程在一个CPU下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为
并发

3. 命令行参数
在这里插入图片描述

argc : 数组中元素的个数
char* argv [ ] : 字符指针数组(指向字符串的首地址)

这个 char * argv [ ] 是以 NULL 结尾;

for ( int i = 0; argv [ i ]; i ++ ) 来证明以 NULL 结尾;

在这里插入图片描述
3.1 为什么有 这个 main() 函数的命令行参数 ? 有什么作用呢 ?

同一个程序,可以通过带不同的选项,执行不同的程序功能函数;

例如: ls -a , ls -l 执行不同的功能
在这里插入图片描述

3.2 argv 这个是谁来生成的呢?

  • 由父进程 bash 来做的; 父进程 命令行解释器;

  • 父进程会生成一个表,然后子进程可以看到父进程的数据,所以子进程通过查表,就可以转换为 -a, -b,-c 等不同选项了;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1580486.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux初学(十七)防火墙

一、防火墙简介 1.1 防火墙的类别 安全产品 杀毒: 针对病毒,特征篡改系统中的文件杀毒软件针对处理病毒程序防火墙: 针对木马,特征系统窃取防火墙针对处理木马 防火墙分为两种 硬件防火墙软件防火墙 硬件防火墙 各个网络安全…

模型量化——NVIDIA——方案选择(PTQ、 partialPTQ、 QAT)

PTQ、 partialPTQ、 QAT 选择流程 PTQ、 partialPTQ、 QAT 咨询NVIDIA 官方后,他们的校正过程一致,支持的量化算子本质是一样的,那么如果你的算子不是如下几类,那么需要自己编写算子。参考TensorRT/tools/pytorch-quantization/py…

淘宝销量API商品详情页原数据APP接口测试㊣

淘宝/天猫获得淘宝app商品详情原数据 API 返回值说明 item_get_app-获得淘宝app商品详情原数据 公共参数 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地…

码蹄集部分题目(第五弹;OJ赛2024年第10期)

🐋🐋🐋竹鼠通讯(钻石;分治思想;模板题:就算几何平面点对问题) 时间限制:3秒 占用内存:128M 🐟题目描述 在真空中,一块无限平坦光滑…

基于SSM+Jsp+Mysql的高校毕业设计管理系统

开发语言:Java框架:ssm技术:JSPJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包…

【三十六】【算法分析与设计】综合练习(3),39. 组合总和,784. 字母大小写全排列,526. 优美的排列

目录 39. 组合总和 对每一个位置进行枚举 枚举每一个数出现的次数 784. 字母大小写全排列 526. 优美的排列 结尾 39. 组合总和 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不…

【信贷后台管理之(五)】

文章目录 目录结构一、面包屑组件封装二、退出登录接口联调三、申请列表的菜单路由3.1 路由创建,表格编写3.2 列表接口调用3.3 出生日期转变3.4 申请状态3.5 申请列表的操作3.5.1 编辑删除提交操作3.5.2 禁用状态3.5.3 操作接口3.5.4 搜索查询3.5.5 申请列表分页功能…

Leetcode面试经典150_Q14最长公共前缀

题目: 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 思路A:横向/纵向扫描 Python: class Solution:def longestCommonPrefix(self, strs: List[str]) -> str:s "…

NPDP含金量高吗?什么人适合学习NPDP?

省流版:NPDP含金量挺高的,做产品的建议去学习下~ 一、什么是NPDP? NPDP 是产品经理国际资格认证,美国产品开发与管理协会(PDMA)发起的,是目前国际公认的唯一的新产品开发专业认证,…

LeetCode-279. 完全平方数【广度优先搜索 数学 动态规划】

LeetCode-279. 完全平方数【广度优先搜索 数学 动态规划】 题目描述:解题思路一:Python 动态规划五部曲(完全平方数就是物品(可以无限件使用),凑个正整数n就是背包,问凑满这个背包最少有多少物品…

小明的衣服-蓝桥1228-优先队列

解法 用优先队列,思路参考哈夫曼树(贪心) 思路:很复杂,说结果 n件同色衣服要染成都不同色,求邮费最少; 倒过来想:n件不同颜色衣服,要染成同一种颜色,求邮费…

tensorflow.js 使用 opencv.js 将人脸特征点网格绘制与姿态估计线绘制结合起来,以获得更高的帧数

系列文章目录 如何在前端项目中使用opencv.js | opencv.js入门如何使用tensorflow.js实现面部特征点检测tensorflow.js 如何从 public 路径加载人脸特征点检测模型tensorflow.js 如何使用opencv.js通过面部特征点估算脸部姿态并绘制示意图 文章目录 系列文章目录前言一、实现步…

Python高级

不定长参数 位置不定长参数&#xff0c;获取参数args会整合为一个元组 def info(*args):print(arg is, args)print(type(arg) is, type(args))info(1, 2, 3, 4, a, b)# 输出 # arg is (1, 2, 3, 4, a, b) # type(arg) is <class tuple> 关键字不定长参数&#xff0c;&…

JavaSE:图书管理系统

目录 一、前言 二、内容需求 三、类的设计 &#xff08;一&#xff09;图书类 1.Book 类 2.BookList 类 &#xff08;二&#xff09;操作类 1.添加图书AddOperation类 2.借阅图书BorrowOperation类 3.删除图书DelOperation类 4.显示图书ShowOperation类 5.退出系统Ex…

Python代码识别minist手写数字【附pdf】

一、概述 对于人类而言,要识别图片中的数字是一件很容易的事情,但是,如何让机器学会理解图片上的数字,这似乎并不容易。那么,能否找出一个函数(模型),通过输入相关的信息,最终得到期望的结果呢? 二、python代码实现中涉及的输入输出内容: 输入:mnist数据集每一个…

HarmonyOS 开发-手写绘制及保存图片

介绍 本示例使用drawing库的Pen和Path结合NodeContainer组件实现手写绘制功能&#xff0c;并通过image库的packToFile和packing接口将手写板的绘制内容保存为图片。 效果图预览 使用说明 在虚线区域手写绘制&#xff0c;点击撤销按钮撤销前一笔绘制&#xff0c;点击重置按钮…

动态路由-基于vue-admin-template

基于 vue-admin-template的动态路由 1. 拆分静态路由与动态路由 静态路由----所有人都可以访问—首页/登录/404 动态路由–有权限的人才可以访问—组织/角色/员工/权限 2. 根据用户权限添加动态路由 获取对应的权限标识(vuex中actions中把用户资料通过return 进行返回&…

代码随想录算法训练营DAY17|C++二叉树Part.4|110.平衡二叉树、257.二叉树的所有路径、404.左叶子之和

文章目录 110.平衡二叉树思路伪代码CPP代码 257.二叉树的所有路径思路伪代码实现CPP代码 404.左叶子之和思路伪代码CPP代码 110.平衡二叉树 力扣题目链接 文章讲解&#xff1a;110.平衡二叉树 视频讲解&#xff1a;后序遍历求高度&#xff0c;高度判断是否平衡 | LeetCode&…

CSS导读 (复合选择器)

&#xff08;大家好&#xff0c;今天我们将继续来学习CSS的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 二、CSS的复合选择器 2.1 什么是复合选择器 2.2 后代选择器(重要) 2.3 子选择器(重要) Questions 小提…

七年老测试整理的RF框架大全,一看就会,一学就懂

1.RF框架 全称robot framework,一个基于python开发的&#xff0c;自动化测试框架&#xff0c;这个框架可以做&#xff1a;web自动化&#xff0c;接口自动化&#xff0c;APP自动化。 github官网 1&#xff09;.安装python 检查python环境 python -V或 pip -V 2&#xff09;.…