chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在Linux上time基礎(chǔ)用法詳解

麥辣雞腿堡 ? 來(lái)源:肖邦Linux ? 作者:肖邦Linux ? 2023-10-09 17:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 基礎(chǔ)用法詳解

先來(lái)看下最基礎(chǔ)的用法,也可能是大家最常見的用法了

root@chopin:~$ time find . -name "chopin.txt"
......
real   0m0.174s
user   0m0.084s
sys    0m0.084s

可以很清楚看到,find 命令執(zhí)行的時(shí)間為 0.174s ,是不是很簡(jiǎn)單,很方便呢

不過(guò),time 命令輸出了三個(gè)參數(shù),我們只用到了第一個(gè)參數(shù),其它兩個(gè)參數(shù)代表什么含義呢?

這里我來(lái)解釋一下:

  • real :表示的是墻上時(shí)間,說(shuō)白了,其實(shí)就是從程序運(yùn)行開始到結(jié)束所經(jīng)歷的時(shí)間;
  • user :表示程序運(yùn)行期間,cpu 在用戶態(tài)所花費(fèi)的時(shí)間;
  • sys :表示程序運(yùn)行期間,cpu 在內(nèi)核態(tài)所花費(fèi)的時(shí)間;

細(xì)心的讀者會(huì)發(fā)現(xiàn),上述案例中的 user + sys 不等于 real ,這是怎么回事呢?

其實(shí)上邊解釋的 usersys ,是 cpu 執(zhí)行指令所消耗的時(shí)間,并不包含:進(jìn)程阻塞 IO、調(diào)度排隊(duì),這些非 cpu 運(yùn)行時(shí)間。

案例中 find 執(zhí)行查找文件過(guò)程中,會(huì)有磁盤 IO 讀取,這時(shí) cpu 會(huì)被釋放出來(lái)干別的事情,這些 IO 消耗的時(shí)間,是不包含在 usersys 統(tǒng)計(jì)數(shù)據(jù)中,所以就出現(xiàn)了 real 時(shí)間大于 user + sys 了。

再通過(guò)一個(gè)示例來(lái)驗(yàn)證并加強(qiáng)我們的理解

root@chopin:~$ time sleep 2
real   0m2.001s
user   0m0.000s
sys    0m0.000s

可以清楚地看到,sleep 命令基本上沒有消耗 cpu,程序真實(shí)的運(yùn)行時(shí)間就是 2 秒

那我們是不是可以得出如下結(jié)論了呢:

real >= user + sys

其實(shí)這個(gè)結(jié)論在單個(gè) cpu 情況下,是正確的。

如果服務(wù)器是多個(gè) cpu,你的程序正好可以將多個(gè) cpu 充分利用起來(lái),程序運(yùn)行期間是多核心并行的,那么 user + sys 統(tǒng)計(jì)的 cpu 時(shí)間可能就會(huì)大于 real 時(shí)間啦

所以這 3 個(gè)時(shí)間之間的關(guān)系并不是恒定的,你需要清楚的了解服務(wù)器是否為多個(gè)核心。

通過(guò)統(tǒng)計(jì)到的 cpu 消耗時(shí)間,我們也可以大概知道,程序運(yùn)行期間 cpu 利用情況。對(duì)于單核,計(jì)算密集型的程序,real 會(huì)很接近 usersys 時(shí)間之和的。

Tips:有些同學(xué)可能對(duì)操作系統(tǒng)可能不太熟悉,這里簡(jiǎn)單科普下內(nèi)核態(tài)用戶態(tài)的基本概念

Linux 為使系統(tǒng)更穩(wěn)定,采取了隔離保護(hù)的措施,運(yùn)行狀態(tài)分為內(nèi)核態(tài)和用戶態(tài)

  • 用戶態(tài) :用戶代碼不具備直接訪問(wèn)底層資源的能力,需要借助內(nèi)核提供的系統(tǒng)調(diào)用 API。在這種隔離保護(hù)下,即使用戶程序崩潰,也不會(huì)影響整個(gè)系統(tǒng)的功能。
  • 內(nèi)核態(tài) :內(nèi)核代碼具備最大權(quán)限,可執(zhí)行任意 cpu 指令,不受任何限制。內(nèi)核態(tài)通常是操作系統(tǒng)提供的最底層、最可靠的代碼運(yùn)行的,內(nèi)核態(tài)的代碼崩潰是災(zāi)難性的,影響整個(gè)系
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1416

    瀏覽量

    41444
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11080

    瀏覽量

    217128
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213847
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux LED子系統(tǒng)詳解

    Linux LED子系統(tǒng)詳解
    的頭像 發(fā)表于 06-10 10:37 ?1891次閱讀
    <b class='flag-5'>Linux</b> LED子系統(tǒng)<b class='flag-5'>詳解</b>

    labview中的Elapsed Time控件的用法

    跪求labview中的Elapsed Time控件的用法
    發(fā)表于 03-22 23:36

    linux中comm命令用法

    linux系統(tǒng)中comm命令用法詳解 linux系統(tǒng)下的comm命令是一個(gè)非常實(shí)用的文件對(duì)比命令。 comm命令功能:選擇或拒絕兩個(gè)已排序的文件的公共的行。 comm命令語(yǔ)法:comm
    發(fā)表于 07-04 08:22

    OrCAD中創(chuàng)建總線及用法詳解

    OrCAD中創(chuàng)建總線及用法詳解,如何創(chuàng)建總線,菜單place->bus或者右側(cè)快捷按鈕
    發(fā)表于 12-02 10:18 ?2.7w次閱讀

    Linux網(wǎng)絡(luò)編程實(shí)例詳解

    網(wǎng)絡(luò)通訊教程學(xué)習(xí)之Linux網(wǎng)絡(luò)編程實(shí)例詳解
    發(fā)表于 09-01 14:55 ?0次下載

    linux下網(wǎng)卡配置詳解

    linux下網(wǎng)卡配置詳解
    發(fā)表于 12-15 22:38 ?0次下載

    XMEGA PWM模塊多通道的用法詳解

    本文主要詳解XMEGA PWM模塊多通道的用法,具體的跟隨小編來(lái)了解一下。
    的頭像 發(fā)表于 06-18 14:09 ?4645次閱讀
    XMEGA PWM模塊多通道的<b class='flag-5'>用法</b><b class='flag-5'>詳解</b>

    你會(huì)使用Linux 中的“!”驚嘆用法

    前言 實(shí)際,不起眼的“!”linux中有著很多讓你驚嘆的妙用。本文就來(lái)細(xì)數(shù)那些“!”的神奇用法。
    的頭像 發(fā)表于 01-29 09:08 ?2758次閱讀

    CMake用法詳解

    CMake用法詳解
    發(fā)表于 10-25 16:28 ?2次下載

    Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解

    Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解
    發(fā)表于 10-28 11:03 ?54次下載

    Linux系統(tǒng)維護(hù)命令的用法

    Linux有很多命令,每個(gè)命令基本可以用一篇文章介紹,本文僅簡(jiǎn)單總結(jié)一些常用系統(tǒng)維護(hù)命令的用法
    的頭像 發(fā)表于 04-17 14:57 ?1349次閱讀
    <b class='flag-5'>Linux</b>系統(tǒng)維護(hù)命令的<b class='flag-5'>用法</b>

    Linux中GNU time命令的使用

    更強(qiáng)大的功能 GNU time 命令提供了更強(qiáng)大的功能: 更詳細(xì)的統(tǒng)計(jì)信息 更豐富的格式輸出 支持保存統(tǒng)計(jì)數(shù)據(jù)到文件 下邊我們來(lái)學(xué)習(xí)寫 GNU time 的使用 1. 最簡(jiǎn)單的用法 root
    的頭像 發(fā)表于 10-09 17:53 ?1052次閱讀

    linux中find用法詳解

    Linux中, find 命令是一個(gè)非常強(qiáng)大的工具,用于指定目錄下查找文件和目錄。下面是 find 命令的用法和詳細(xì)解釋: 語(yǔ)法: find [路徑] [表達(dá)式] 路徑:要查找的目
    的頭像 發(fā)表于 11-08 14:29 ?1087次閱讀

    linux常用命令及用法

    Linux是一種開源的操作系統(tǒng),它以穩(wěn)定、高效和安全的特點(diǎn)受到廣大用戶的喜愛。掌握Linux的常用命令及其用法對(duì)于操作系統(tǒng)的管理和開發(fā)都至關(guān)重要。本文將詳盡、詳實(shí)、細(xì)致地介紹Linux
    的頭像 發(fā)表于 11-17 09:47 ?979次閱讀

    Linux lsof命令的基本用法

    linux 系統(tǒng)中,一切皆文件。通過(guò)文件不僅僅可以訪問(wèn)常規(guī)數(shù)據(jù),還可以訪問(wèn)網(wǎng)絡(luò)連接和硬件。所以 lsof 命令不僅可以查看進(jìn)程打開的文件、目錄,還可以查看進(jìn)程監(jiān)聽的端口等 socket 相關(guān)的信息。本文將介紹 lsof 命令的基本
    的頭像 發(fā)表于 10-23 11:52 ?1320次閱讀
    <b class='flag-5'>Linux</b> lsof命令的基本<b class='flag-5'>用法</b>