国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量)

這篇具有很好參考價(jià)值的文章主要介紹了【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量),Linux,linux,運(yùn)維,服務(wù)器,后端

前言

前面我們講了C語言的基礎(chǔ)知識,也了解了一些數(shù)據(jù)結(jié)構(gòu),并且講了有關(guān)C++的一些知識,也學(xué)習(xí)了一些Linux的基本操作,也了解并學(xué)習(xí)了有關(guān)Linux開發(fā)工具vim 、gcc/g++ 使用、yum工具以及git 命令行提交代碼也相信大家都掌握的不錯(cuò),上一篇文章我們了解了關(guān)于進(jìn)程的基本概念,今天博主帶大家了解一下 —— 進(jìn)程優(yōu)先級以及環(huán)境變量, 下面話不多說坐穩(wěn)扶好咱們要開車了?。。??

一、進(jìn)程優(yōu)先級

1. 優(yōu)先級概念

進(jìn)程優(yōu)先級(Process Priority)是操作系統(tǒng)用來決定進(jìn)程獲取CPU資源的順序的一種機(jī)制。一般來說,進(jìn)程優(yōu)先級較高的進(jìn)程會獲得更多的CPU時(shí)間片,從而更頻繁地執(zhí)行。進(jìn)程優(yōu)先級的設(shè)置通常由操作系統(tǒng)或系統(tǒng)管理員來決定,而不是由普通用戶來指定。進(jìn)程優(yōu)先級的目的是根據(jù)進(jìn)程的重要性或性能需求來分配系統(tǒng)資源,以實(shí)現(xiàn)對系統(tǒng)資源的合理分配和性能調(diào)整。較高優(yōu)先級的進(jìn)程通常會被更快地響應(yīng)和執(zhí)行,而較低優(yōu)先級的進(jìn)程則可能會被抑制或推遲。

2. Linux查看系統(tǒng)進(jìn)程

在linux系統(tǒng)中,用ps –l命令則會類似輸出以下幾個(gè)內(nèi)容:
【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量),Linux,linux,運(yùn)維,服務(wù)器,后端
我們很容易注意到其中的幾個(gè)重要信息,有下:

  • UID : 代表執(zhí)行者的身份。
  • PID : 代表這個(gè)進(jìn)程的代號。
  • PPID :代表這個(gè)進(jìn)程是由哪個(gè)進(jìn)程發(fā)展衍生而來的,亦即父進(jìn)程的代號。
  • PRI :代表這個(gè)進(jìn)程可被執(zhí)行的優(yōu)先級,其值越小越早被執(zhí)行。
  • NI :代表這個(gè)進(jìn)程的nice值。

3. PRI(Priority)和NI(Nice)

PRI是指進(jìn)程的實(shí)際優(yōu)先級(Priority)。在Unix/Linux系統(tǒng)中,PRI是一個(gè)整數(shù)值,代表了進(jìn)程在調(diào)度時(shí)的優(yōu)先級。較低的PRI值表示較高的優(yōu)先級,而較高的PRI值表示較低的優(yōu)先級。系統(tǒng)中的PRI值范圍可以是不固定的,具體取決于操作系統(tǒng)的實(shí)現(xiàn)。

NI是指進(jìn)程的Nice值(Nice Value)。Nice值是Unix/Linux系統(tǒng)中用于調(diào)整進(jìn)程優(yōu)先級的參數(shù)。Nice值的范圍通常是從-20到19,其中-20是最高優(yōu)先級,19是最低優(yōu)先級。與PRI不同的是,較低的NI值表示較低的優(yōu)先級,而較高的NI值表示較高的優(yōu)先級。

PRI和NI之間存在一個(gè)簡單的轉(zhuǎn)換關(guān)系。通常,PRI = 20 + NI,即PRI值等于20加上Nice值。因此,通過修改NI值,可以間接地修改進(jìn)程的PRI值,從而調(diào)整進(jìn)程的優(yōu)先級。

可以使用nice命令來設(shè)置進(jìn)程的Nice值。例如,使用以下命令可以將進(jìn)程的Nice值設(shè)置為10:

nice -n 10 command

其中,command是要執(zhí)行的命令或程序。

除了使用nice命令外,還可以使用renice命令來修改已經(jīng)運(yùn)行的進(jìn)程的Nice值。例如,使用以下命令可以將進(jìn)程的Nice值修改為5:

renice -n 5 -p pid

其中,pid是要修改Nice值的進(jìn)程的進(jìn)程ID。

????注意:只有具有足夠權(quán)限的用戶才能修改進(jìn)程的NI值,一般需要管理員或具有特殊權(quán)限的用戶才能進(jìn)行修改。

二、環(huán)境變量

1. 概念

環(huán)境變量是操作系統(tǒng)中用于存儲和管理系統(tǒng)級別的配置信息的一種機(jī)制。它們是由操作系統(tǒng)或應(yīng)用程序設(shè)置的鍵值對,用于指定特定應(yīng)用程序或整個(gè)系統(tǒng)在運(yùn)行時(shí)的行為。環(huán)境變量通常包含一些重要的配置信息,如路徑、語言、時(shí)區(qū)等。通過設(shè)置和讀取環(huán)境變量,可以在不修改應(yīng)用程序本身的情況下,對其進(jìn)行配置和定制。應(yīng)用程序可以使用環(huán)境變量來獲取配置參數(shù)或根據(jù)不同的環(huán)境執(zhí)行不同的操作。

在不同的操作系統(tǒng)中,設(shè)置和讀取環(huán)境變量的方法可能會有所不同。例如,在Unix和Linux系統(tǒng)中,可以使用"export"命令設(shè)置環(huán)境變量,通過"$"符號引用環(huán)境變量的值。

2. 查看環(huán)境變量方法

在Linux下,可以使用以下方法來查看環(huán)境變量:

  1. 使用"printenv"命令:
    在終端中輸入"printenv"命令,將顯示當(dāng)前會話中的所有環(huán)境變量及其對應(yīng)的值。

  2. 使用"echo"命令:
    可以使用"echo"命令來顯示單個(gè)環(huán)境變量的值。例如,要查看"PATH"環(huán)境變量的值,可以輸入以下命令:

echo $PATH

類似地,可以將"$"符號后面的部分替換為所需的環(huán)境變量名稱。

  1. 使用"env"命令:
    "env"命令可以顯示當(dāng)前會話中的環(huán)境變量和其值。在終端中輸入"env"命令即可顯示所有環(huán)境變量。

  2. 查看特定配置文件:
    根據(jù)不同的Linux發(fā)行版,可能會有不同的配置文件保存環(huán)境變量。在常見的發(fā)行版如Ubuntu和CentOS中,可以查看"/etc/environment"文件來獲取全局環(huán)境變量的值。

注意:這些方法都是在終端中查看當(dāng)前會話中的環(huán)境變量。如果您希望查看永久環(huán)境變量(即在每次登錄時(shí)都生效的環(huán)境變量),則可以查看用戶的bash配置文件,如~ /.bashrc或~/.bash_profile中的設(shè)置。

3. 環(huán)境變量的組織方式

【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量),Linux,linux,運(yùn)維,服務(wù)器,后端
每個(gè)程序都會收到一張環(huán)境表,環(huán)境表是一個(gè)字符指針數(shù)組,每個(gè)指針指向一個(gè)以’\0’結(jié)尾的環(huán)境字符串。

4.通過代碼獲取環(huán)境變量

  • 命令行第三個(gè)參數(shù)
#include <stdio.h>
int main(int argc, char *argv[], char *env[])
{
	int i = 0;
	for(; env[i]; i++)
	{
		printf("%s\n", env[i]);
	}
	return 0;
}
  • 通過第三方變量environ獲取
#include <stdio.h>
int main(int argc, char *argv[])
{
	extern char **environ;
	int i = 0;
	for(; environ[i]; i++)
	{
		printf("%s\n", environ[i]);
	}
	return 0;
}

libc中定義的全局變量environ指向環(huán)境變量表,environ沒有包含在任何頭文件中,所以在使用時(shí) 要用extern聲明。

5. 環(huán)境變量的特點(diǎn)

  1. 全局性:Linux環(huán)境變量是在整個(gè)操作系統(tǒng)級別定義和生效的。它們對所有用戶和進(jìn)程都是全局可見的,因此可以在系統(tǒng)中的任何位置和任何進(jìn)程中使用和訪問。

  2. 動(dòng)態(tài)性:Linux環(huán)境變量可以在運(yùn)行時(shí)動(dòng)態(tài)地進(jìn)行修改、添加或刪除。這意味著可以根據(jù)需要更改環(huán)境變量的值,而無需重新編譯或重啟程序。

  3. 字符串格式:Linux環(huán)境變量的值通常以字符串的形式表示。這使得環(huán)境變量非常適合存儲配置信息、路徑、用戶名等文本數(shù)據(jù)。

  4. 持久性:Linux環(huán)境變量可以在系統(tǒng)啟動(dòng)時(shí)由各種不同的方式進(jìn)行設(shè)置。例如,在/etc/profile、~/.bashrc/etc/environment 等文件中設(shè)置環(huán)境變量,使其在系統(tǒng)啟動(dòng)時(shí)自動(dòng)加載。

  5. 繼承性:Linux環(huán)境變量可以被派生進(jìn)程繼承。這意味著當(dāng)創(chuàng)建子進(jìn)程時(shí),子進(jìn)程會繼承父進(jìn)程的環(huán)境變量。這種特性使得環(huán)境變量可以在整個(gè)進(jìn)程樹中自動(dòng)傳遞并共享。

  6. 臨時(shí)性:Linux環(huán)境變量可以在當(dāng)前的終端會話中設(shè)置,并在會話結(jié)束后自動(dòng)消失。這對于臨時(shí)設(shè)置和調(diào)試非常有用。

  7. SHELL變量和環(huán)境變量:在Linux中,有些特殊的環(huán)境變量被稱為SHELL變量,用于控制和配置當(dāng)前的Shell環(huán)境。這些變量在當(dāng)前Shell中起作用,而不會傳遞給其他進(jìn)程。

總結(jié)

一、進(jìn)程優(yōu)先級:

  1. 優(yōu)先級概念:進(jìn)程優(yōu)先級決定了進(jìn)程在系統(tǒng)資源分配和競爭中的優(yōu)先級別。優(yōu)先級較高的進(jìn)程會在資源有限時(shí)獲得更多的處理時(shí)間和資源。
  2. Linux查看系統(tǒng)進(jìn)程:通過命令行工具如top、ps等可以實(shí)時(shí)查看系統(tǒng)中運(yùn)行的進(jìn)程以及它們的優(yōu)先級信息。
  3. PRI(Priority)和NI(Nice):在Linux中,進(jìn)程的優(yōu)先級主要通過PRI和NI來表示。PRI的范圍是-20(最高優(yōu)先級)到+19(最低優(yōu)先級),而NI的范圍是-20到+19,它們之間存在一定的關(guān)系。較小的PRI值表示較高的優(yōu)先級。

二、環(huán)境變量:
環(huán)境變量在Linux系統(tǒng)中具有重要作用,用于存儲和傳遞配置信息、路徑、用戶名等。具體內(nèi)容如下:

  1. 概念:環(huán)境變量是在操作系統(tǒng)層面上定義和生效的全局變量,它們可以在系統(tǒng)中的任何位置和任何進(jìn)程中使用和訪問。
  2. 查看環(huán)境變量方法:使用printenvecho命令可以在終端中查看當(dāng)前環(huán)境變量的值,或者通過env命令列出所有環(huán)境變量。
  3. 環(huán)境變量的組織方式:環(huán)境變量以key-value的形式存儲,其中key是變量名,value是變量的值。多個(gè)環(huán)境變量以列表或配置文件的形式進(jìn)行組織。
  4. 通過代碼獲取環(huán)境變量:可以使用編程語言提供的函數(shù)如getenv來獲取指定環(huán)境變量的值,然后在代碼中進(jìn)行使用。
  5. 環(huán)境變量的特點(diǎn):環(huán)境變量具有全局性、動(dòng)態(tài)性、文本格式等特點(diǎn)。它們可以全局共享、動(dòng)態(tài)修改,適應(yīng)不同的環(huán)境和配置需求。

溫馨提示

感謝您對博主文章的關(guān)注與支持!如果您喜歡這篇文章,可以點(diǎn)贊、評論和分享給您的同學(xué),這將對我提供巨大的鼓勵(lì)和支持。另外,我計(jì)劃在未來的更新中持續(xù)探討與本文相關(guān)的內(nèi)容。我會為您帶來更多關(guān)于Linux以及C++編程技術(shù)問題的深入解析、應(yīng)用案例和趣味玩法等。如果感興趣的話可以關(guān)注博主的更新,不要錯(cuò)過任何精彩內(nèi)容!

再次感謝您的支持和關(guān)注。我們期待與您建立更緊密的互動(dòng),共同探索Linux、C++、算法和編程的奧秘。祝您生活愉快,排便順暢!
【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量),Linux,linux,運(yùn)維,服務(wù)器,后端文章來源地址http://www.zghlxwxcb.cn/news/detail-699987.html

到了這里,關(guān)于【探索Linux】—— 強(qiáng)大的命令行工具 P.8(進(jìn)程優(yōu)先級、環(huán)境變量)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Linux進(jìn)程篇-----進(jìn)程優(yōu)先級】

    【Linux進(jìn)程篇-----進(jìn)程優(yōu)先級】

    1.基本概念 cpu 資源分配的先后順序,就是指進(jìn)程的優(yōu)先權(quán)(priority) .優(yōu)先權(quán)高的進(jìn)程有優(yōu)先執(zhí)行權(quán)利。配置進(jìn)程優(yōu)先權(quán)對多任務(wù)環(huán)境的 Linux 很有用,可以改善系統(tǒng)性能。還可以把進(jìn)程運(yùn)行到指定的 CPU 上,這樣一來,把不重要的進(jìn)程安排到某個(gè) CPU,可以大大改善系統(tǒng)整體性能

    2024年02月08日
    瀏覽(19)
  • 【Linux】進(jìn)程優(yōu)先級

    【Linux】進(jìn)程優(yōu)先級

    Hello,大家好。本文我們要來介紹的是有關(guān)Linux下【進(jìn)程優(yōu)先級】,首先我們要了解的是其基本概念 在 Linux基礎(chǔ)篇之權(quán)限 一文中我們有談到過什么是權(quán)限,在Linux下有權(quán)限和無權(quán)限的區(qū)別在哪里。那現(xiàn)在的話我們就要來對比一下【權(quán)限】和【優(yōu)先級】這兩個(gè)概念 權(quán)限 : 表示

    2024年02月11日
    瀏覽(25)
  • Linux——進(jìn)程優(yōu)先級

    Linux——進(jìn)程優(yōu)先級

    1.什么是優(yōu)先級? ????????優(yōu)先級和權(quán)限息息相關(guān)。權(quán)限的含義為能還是不能做這件事。而優(yōu)先級則表示:你有權(quán)限去做,只不過是先去做還是后去做這件事罷了。 2.為什么會存在優(yōu)先級? ????????優(yōu)先級表明了狼多肉少的理念,舉個(gè)例子:在日常生活中我們進(jìn)行排隊(duì)

    2024年02月06日
    瀏覽(26)
  • 圖解Linux進(jìn)程優(yōu)先級

    圖解Linux進(jìn)程優(yōu)先級

    目錄 1.什么是進(jìn)程優(yōu)先級? 2.進(jìn)程優(yōu)先級原理 3.查看進(jìn)程優(yōu)先級 4.修改進(jìn)程優(yōu)先級 4.1 setpriority函數(shù)原型 4.2 getpriority函數(shù)原型 4.3 sched_setscheduler函數(shù)原型 4.4 sched_getscheduler函數(shù)原型 4.5 sched_setparam函數(shù)原型 4.6 sched_getparam函數(shù)原型 Linux進(jìn)程的優(yōu)先級是用來確定在多個(gè)進(jìn)程同時(shí)運(yùn)行

    2024年02月05日
    瀏覽(23)
  • Linux—進(jìn)程狀態(tài)、僵尸進(jìn)程、孤獨(dú)進(jìn)程、優(yōu)先級

    Linux—進(jìn)程狀態(tài)、僵尸進(jìn)程、孤獨(dú)進(jìn)程、優(yōu)先級

    ??北塵_ :個(gè)人主頁 ??個(gè)人專欄 :《Linux操作系統(tǒng)》《經(jīng)典算法試題 》《C++》 《數(shù)據(jù)結(jié)構(gòu)與算法》 ??走在路上,不忘來時(shí)的初心 為了弄明白正在運(yùn)行的進(jìn)程是什么意思,我們需要知道進(jìn)程的不同狀態(tài)。一個(gè)進(jìn)程可以有幾個(gè)狀態(tài)(在 Linux內(nèi)核里,進(jìn)程有時(shí)候也叫做任務(wù))

    2024年02月05日
    瀏覽(23)
  • 【Linux】進(jìn)程狀態(tài)、進(jìn)程優(yōu)先級和進(jìn)程切換

    【Linux】進(jìn)程狀態(tài)、進(jìn)程優(yōu)先級和進(jìn)程切換

    作者簡介:?舊言~,目前大二,現(xiàn)在學(xué)習(xí)Java,c,c++,Python等 座右銘:松樹千年終是朽,槿花一日自為榮。 目標(biāo):了解馮諾依曼體系結(jié)構(gòu)與操作系統(tǒng),掌握Linux的進(jìn)程 毒雞湯:一花凋零荒蕪不了整個(gè)春天,一次挫折也荒廢不了整個(gè)人生。 望小伙伴們點(diǎn)贊??收藏?加關(guān)注喲??

    2024年02月04日
    瀏覽(21)
  • 【Linux】進(jìn)程周邊003之進(jìn)程優(yōu)先級

    【Linux】進(jìn)程周邊003之進(jìn)程優(yōu)先級

    ? ?? 樊梓慕: 個(gè)人主頁 ??? 個(gè)人專欄: 《C語言》 《數(shù)據(jù)結(jié)構(gòu)》 《藍(lán)橋杯試題》 《LeetCode刷題筆記》 《實(shí)訓(xùn)項(xiàng)目》 《C++》 《Linux》 ?? 每一個(gè)不曾起舞的日子,都是對生命的辜負(fù) 目錄 前言 1.基本概念 2.PRI與NI 3.利用top命令更改已存在進(jìn)程的nice值 4.通過renice命令更改進(jìn)程

    2024年02月03日
    瀏覽(20)
  • 【Linux】進(jìn)程優(yōu)先級 && 進(jìn)程切換 && 環(huán)境變量

    【Linux】進(jìn)程優(yōu)先級 && 進(jìn)程切換 && 環(huán)境變量

    目錄 一、進(jìn)程優(yōu)先級 ?1、優(yōu)先級概念 ?2、優(yōu)先級特點(diǎn) ?3、修改Linux下的優(yōu)先級 二、進(jìn)程切換 ?1、進(jìn)程特性 ?2、進(jìn)程切換 三、環(huán)境變量 ?1、基本概念 ?2、常見環(huán)境變量 ?3、查看環(huán)境變量方法 ?4、PATH環(huán)境變量 ?5、和環(huán)境變量相關(guān)的命令 ?6、環(huán)境變量的組織方式 ?7、通過

    2024年02月11日
    瀏覽(34)
  • Linux_進(jìn)程的優(yōu)先級&&環(huán)境變量&&上下文切換&&優(yōu)先級隊(duì)列

    Linux_進(jìn)程的優(yōu)先級&&環(huán)境變量&&上下文切換&&優(yōu)先級隊(duì)列

    什么是優(yōu)先級? 指定一個(gè)進(jìn)程獲取某種資源的先后順序 本質(zhì)是進(jìn)程獲取cpu資源的優(yōu)先順序 為什么要有優(yōu)先級 進(jìn)程訪問的資源(CPU)是有限的 操作系統(tǒng)關(guān)于調(diào)度和優(yōu)先級的原則:分時(shí)操作系統(tǒng),基本的公平,如果進(jìn)程因?yàn)殚L時(shí)間不被調(diào)整,就造成了饑餓問題 Linux的優(yōu)先級特

    2024年04月09日
    瀏覽(21)
  • Linux--進(jìn)程狀態(tài)與優(yōu)先級

    Linux--進(jìn)程狀態(tài)與優(yōu)先級

    進(jìn)程指的是程序在執(zhí)行過程中的活動(dòng)。進(jìn)程是操作系統(tǒng)進(jìn)行資源分配和調(diào)度的基本單位 。 進(jìn)程可以看作是程序的一次執(zhí)行實(shí)體,它包含了程序代碼、數(shù)據(jù)以及相關(guān)的執(zhí)行上下文信息。操作系統(tǒng)通過創(chuàng)建、調(diào)度和管理多個(gè)進(jìn)程來實(shí)現(xiàn)對計(jì)算機(jī)系統(tǒng)資源的有效利用。 每個(gè)進(jìn)程都

    2024年02月01日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包