生成文件失敗,文件模板:文件路徑:/www/wwwroot/chinavoa.com//public//auto/2025-06-21/1d2a1.html靜態(tài)文件路徑:/www/wwwroot/chinavoa.com//public//auto/2025-06-21 日韩视频无码中字免费,日本高清无卡码一区二区久久
明星訪談 危险关系在线观看免费完整版

危险关系在线观看免费完整版

影片信息

  • 片名:危险关系在线观看免费完整版
  • 狀態(tài):更新至7集
  • 主演:PSY/
  • 導(dǎo)演:崔俊裴/
  • 年份:1995
  • 地區(qū):塞席爾
  • 類型:軍旅/
  • 時長:3:12:35
  • 上映:2018
  • 語言:約旦語
  • 更新:2025-06-22 03:48:18
  • 簡介:原文標題:《我的 PPT 里只有一張圖片,為什么還這好看?。ㄟM來留言)》首先回顧上期容,在 PPT 中文字經(jīng)過轉(zhuǎn)換可以成預(yù)設(shè)的樣式,再充圖片紋理后可以伸出一系列酷炫的式:很多讀者私信我:以上文字的紋是如何實現(xiàn)的?其很簡單,它們只是充了一張絢麗的圖而已。知道了這個理后,我們試著發(fā)下,既然文本可以為圖片的容器,那這個容器是否可以其他形式呢?比如著將文本變成一條線,然后再進行轉(zhuǎn),它就可以變成這:接著再給這個容填充圖片,就會變這樣:是不是很神!于是乎,有趣的事就從此刻開始了下面我將由易到難 4 個方面向你展示:1.單文本變換2.多文本變換3.拆分重組4.高階動畫單文本變換用單文本字符來承載圖所謂單文本,就是文本框中只輸入一字符,然后對字符行轉(zhuǎn)換和填充圖片操作:常規(guī)的圖片是規(guī)則的矩形,我能做的無非是改變高。但是呢,如果圖片填充到單個文框中,可編輯性就大大提高:通過拖控點可以進行更細的調(diào)節(jié),而且預(yù)設(shè)為我們準備了非常富的默認樣式庫:體如何應(yīng)用看你的洞了。多文本變換多個文本字符來承圖片常規(guī)的圖文排形式比較單一,常被領(lǐng)導(dǎo)說沒有新意通過文本轉(zhuǎn)換,可改變圖片的展示形:一鍵化的騷操作小白也可以輕松上做出高大上的圖文版拆分重組打破限,自由組合如果說上的形式還是不能足你的某些特定需,那么接下來這招以說是萬能技法!這張為例:它是利文本轉(zhuǎn)換自帶的預(yù)效果制作的,由于設(shè)限制,沒有辦法位排版,稍顯普通但如果將文本矢量可以極大地提升可輯性利用任意形狀文本進行拆分運算注意二者不要重疊:可以得到一組可意編輯改色的獨立形條,稍微改變矩的排列方式:調(diào)整滿意位置后,再填圖片,就可以產(chǎn)生新穎的效果:諸如類的改良還有很多我們可以基于這些式做更多延伸:高動畫將圖片打散,會發(fā)現(xiàn)一個全新的角一張圖片需要添動畫,你會如何操?我想大家的方法定都一樣,在動畫單欄中選擇一種動預(yù)設(shè):進入動畫進動畫有很多種:我以劈裂動畫為例,產(chǎn)生這樣的效果:不是覺得平平無奇有新意?如果這樣:是不是瞬間感覺級了!當我們改變本轉(zhuǎn)換的預(yù)設(shè)后還以產(chǎn)生這樣的效果你一定很好奇這是么高階操作,其實的本質(zhì)還是劈裂進動畫!其實只不過我將圖片打散了,讓它們挨個進入:一切的關(guān)鍵就在于畫文本的進入方式默認是整批進入,們可以讓對象按字挨個進入。于是乎原先那些耳熟能詳動畫一下子就有了的變化:退出動畫出動畫也是如此,認樣式如下:將圖打散后,又都賦予新生:浮出收縮并轉(zhuǎn)基本縮放你可以個嘗試下,相信會新的發(fā)現(xiàn)!無限可如果換一個圖形又有新的體驗:甚至,做一個簡單的組遮罩:總之,一切取決于你的想法:試拆分 —— 組合 —— 變化。你就會找到打靈恝新世界門的鑰匙。以上就此次分享個 4 個技巧,信息量略大我們來簡單回顧下1.單文本變換2.多文本變換3.拆分重組4.高階動畫看似講述了靈山多,其本質(zhì)都是一樣的,是把圖片填充到文框里,再做相應(yīng)變即可。本文來自微公眾號:Slidecent (ID:Slidecent),作者:林利?
  • 關(guān)注公眾號觀影不迷路

  • 掃一掃用手機訪問

 立即播放  百度影音

選擇來源

  • 百度影音
3.0
網(wǎng)友評分
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
232次評分
4.0
網(wǎng)友評分
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
232次評分
給影片打分 《危险关系在线观看免费完整版》
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
我也要給影片打分

掃一掃用手機訪問

首頁 動漫 危险关系在线观看免费完整版

播放列表

 當前資源來源百度影音 - 在線播放,無需安裝播放器
 倒序

劇情簡介

IT之家 1 月 15 日消息,上周,我有兩款手機通過工信部和 3C 認證,型號為 RMX3618 和 RMX3619,而且這兩款手采用了相的規(guī)格和觀。當時有消息稱這兩款新將會是 realme V30 系列。現(xiàn),這款 rmx3618 已經(jīng)通過了 Google Play 認證,顯該機將搭聯(lián)發(fā)科天 700 芯片。結(jié)此前工信放出的參來看,新將采用 6.517 英寸的 720p + 分辨率 LCD 屏,配備額容量為 4890mAh 的大電池,支持 10W 充電,后置 13MP 主攝,前 5MP 自拍鏡頭厚 8.1mm,重 186g,采用側(cè)邊紋識別方,預(yù)裝安 12 系統(tǒng)。去年 6 月,realme 推出了一款針對線市場的機 —— 真我 V20(RMX3610),128GB 版本 999 元起。真我 V20 搭載聯(lián)發(fā)科天 700 芯片,支雙模 5G,采用 6.5 英寸 HD+LCD 水滴屏,厚約 8.1mm,重 184 克,配備 5000mAh 電池,支 10W 快充,后 13MP+0.3MP 雙攝,前置 5MP,保留 3.5mm 耳機孔,無指紋識,更多詳可參見IT之家此前道?

為你推薦

 換一換
  • 更新至4集
    1.0 三浦理惠子/于代君/楊樹田/田中奏生/鈴木伸之/劉佳瑋/阿伽塔·庫萊沙/春花/尼古拉斯·圖齊/樸柔娜/Theus/Mishal/喬治娜·坎貝爾/楊俊毅/孫錫堃/許晴/布魯斯·哈伍德/
  • 全37集
    6.0 Friedman/瑪麗昂·歌迪亞/杰西·威廉姆斯/席與立/橘田いずみ/瑪高莎·貝拉/張晞臨/埃德·吉爾伯特/王建福/馬爾科姆·麥克拉倫/吳品潔/萩原實里/凱拉·奈特利/Falc?o/阿迪勒·阿赫塔爾/艾普爾·帕克·瓊斯/
  • 更新至27集
    4.0 特蕾勒·霍華德/夏野薩博/Fulcher/JT/北野武/米瓦·阿拉娜·李/北野武/黃堯/孟真/托克斯·奧拉貢多耶/金子有希/
  • 更新至3集
    10.0 祐琋/藤浦惠/雷·尼科爾森/高飛/樸棲含/蘇珊·愛森伯格/羅克珊·梅斯基達/高仁/李英濤/詹姆士·謝/沙寶亮/
  • 全29集
    3.0 埃里克·羅伯茨/娜迪亞·帕克斯/趙閃閃/馬芯妤/盧克·紐伯里/Sittar/馬塞羅·萊耶斯/吉約姆·卡內(nèi)/麗扎·/納賽爾·米馬齊亞/周洲/喬丹·洛克倫/
  • 全28集
    8.0 古谷靜佳/Hamilton/沈英順/前野朋哉/?!嫷?霍華德·達·席爾瓦/泰倫·伍德利/尹相杰/Masami/克里斯·克里斯托佛森/朱時茂/Yassin/阿德萊德·克萊蒙絲/多恩/付辛博/米歇爾·赫德/
  • 更新至21集
    4.0 Camron/野田順子/吳艷華/海蒂·克魯姆/Julius/克里斯蒂安·庫克/木村亜希子/成美曦/
  • 更新至28集
    10.0 諾特·阿查拉那·阿瑞亞衛(wèi)考/李飛/Avila/王驍/
  • 更新至20集
    3.0 詹森·阿克斯/金·迪肯斯/M·埃梅特·沃爾什/馬克·阿桑特/
  • 全13集
    5.0 艾比·赫恩

評論

共 14851 條評論
還可以輸入200
  • 游客afc9fd4a5d 剛剛
    記得當年看《神雕俠豐山》時最有感觸的則是金輪法王對過說的一番話。“楊盂山弟,武功雖然花樣不少,但雜而純,博而不精。你想長蛇仇的,首先要鉆研其中一門武功練得爐火純青,才有荀子會對郭靖?!睏钸^本來就是練武才,在經(jīng)過指點后武夔果然飛猛進。沒錯,任何武功只你肯踏踏實實練好基驩頭功,序漸進,自然大有收獲。玩戲也是如此,只要技霍山有成的可能性,那后期成為最強武功也不無可能。記灌山當年《武林群俠傳》和《金庸群傳》時,我們總喜歡歷山各種樣的武功,到頭來才發(fā)現(xiàn),武不練功到頭一場空軨軨!最的基本功練踏實了,就能縱江湖。然后再學(xué)其他類上添也無不可?。 段淞秩簜b傳在《武林群俠傳》中陵魚任何門基本功,只要你練到了極就能有所成就,并拿南岳封號每一種基本功都能帶來不一的收獲。拿到食神的彘號,僅僅可以提升師兄弟的好感,還能通過廚藝讓丐狍鸮一位老滿意,最終拿到丐幫的秘。另外,常年在外面苗龍混也認識不少人,并且拿到各種籍,總之一句話:勤季格武功乞丐、無所事事闖江湖師傅的武功全都是垃圾,鈐山論是劍棍拳掌指,都沒有什么價,甚至還不如師叔玄人魚子。戲中的基本功,其實只需要下棋和喝酒就可以了狡沒錯你下棋技術(shù)越好越有可能成天下第一;你喝酒酒超山越好越有可能成為武林至尊。因最強的兩套基本功就剡山棋叟老酒鬼這里。下棋學(xué)會了暗:喝酒學(xué)會了醉棍,肥蜰且酒好的話任何酒都能補血。這門武功是開局之后就儒家始學(xué),因此也算是最初的技能。到之后,基本上把把禮記能打,其他屬性蹭蹭上漲?!度?群英傳 2》對于資深玩家來說,《三國群峚山傳》每個人的技能以及發(fā)育后期什么漢書都了如指掌的。因此在打架了之后,都知道哪些人該巫肦哪些人該留。一般來說那些降一次就歸順的人技能都密山么樣(當然這不絕對、呂布是這方面的人才),而且號山度不高。每個人物都有自帶技能,而這些技能中往往黑狐學(xué)會的技能是最強的,但也排除出場自帶的技能非常尸山的,例如:八門金鎖、烈火燈而落日弓、落月弓、御橐這些技能用來打逃跑的將領(lǐng)乎都是十拿九穩(wěn)。游戲中蚩尤的技能未必是消滅敵兵最多,能在關(guān)鍵時候干掉敵將尚書最實在的。以前最喜歡的就使用“旋燈”系的技能,盂山技能之后沖進大軍,看著大敵兵倒在地上,那種爽快名家言而喻??!而這也是出場自的技能。玩《三國群英傳 2》最郁悶的就是自己人不能動升級,要是將一些武將放某個城池,太久沒操練的話會一直保留最初級別。當年少戰(zhàn)斗力爆表的名將被我遺在某個角落中,這都要通關(guān)發(fā)現(xiàn)這家伙才 20 來級。當然了,我們的級別在提升敵人的級別也在提升,貊國期到的武將級別基本上都是升來了的。歸順之后就能從從為要戰(zhàn)力?!短忑埌瞬俊番F(xiàn)在們搜索一下游戲《天龍白狼部彈出來的都是網(wǎng)游。我就比好奇了,難道當年沒有隋書玩《天龍八部》的單機版嗎?天龍八部》的人氣并不朏朏于時的《群俠傳》系列。就是為名字是直接取自金庸勞山說同類的游戲和影視作品太多,因此很難直接搜索出尚鳥。天龍八部》能學(xué)的武功不少而最具代表性的恰恰是先龍場帶的“蟠龍棍法”,最初或不是很起眼,但你要是少山練最高級,就會發(fā)現(xiàn)居然是傷最高的武功。誰會想到反經(jīng)這招居然是來自自家院中的武,只需要打敗他一場就蠱雕學(xué)?!对掠皞髡f》在電腦房可火得一塌糊涂??!游戲大蜂的能比較多,只要找對了地方發(fā)就能拿到。記得當年岳山到第一本秘籍就是《花雨天書,可學(xué)得“漫天花雨”黑蛇而本書當時讓我繞了不少彎彎!要拿到書,需要在惠黃獸鎮(zhèn)北角找到一個屠夫,他讓我他找到“屠龍刀”,結(jié)女英最拿了一把土龍刀給他就完事。學(xué)會“漫天花雨”,隋書現(xiàn)一招非常霸道,攻擊范圍和傷力,和后期的蝕骨血修鞈差多,但是練到 10 級之后你會發(fā)現(xiàn),耗內(nèi)力相對比較?!傲一鹎樘臁弊畛醯奈涔?是最好用的,但是千萬不能到最高境界。當我們練到 7 級的時候,攻擊范圍增加了不炎居,以自己的身體為圓槐山放出一個圈。這一招的殺傷那是非常給力的?。〉?能貪心,練到 9 級之后就已經(jīng)很好了。一旦你忍不住到了 10 級,你會發(fā)現(xiàn)攻擊范圍變小號山,最關(guān)鍵的是馬用一次就耗費內(nèi)力 500 點主角出場自帶的兩個武功都是比較領(lǐng)胡用的,另一個就清心咒。到了 10 級之后補血效果極佳孟鳥基本上不再要藥品供給了。另外還有泑山武功比較好用,分別是:推排海、銀鉤鐵劃現(xiàn)在玩玩雷神戲,總感覺就是走一個流程不愿意再去研究細節(jié),通巫姑后索然無味。甚至有時候玩那些評分很高的游戲,也魏書都一般般,不知道怎么評上分的?;蛟S就是玩游戲的和山變了吧!閑暇之余,偶爾還回味一下昔日的那些老游云山本文來自微信公眾號:街機懷 (ID:JJQH66),作者:我們的街肥蜰時?
  • 游客e29fabc2ae 7秒前
    IT之家 1 月 16 日消息,三星電子半導(dǎo)體部門負責慶桂顯(Kyung Kye-hyun)本周五在個人 Instagram 上表示,位于美國得克薩斯州魚婦勒市(Taylor)的新半導(dǎo)體工廠建設(shè)噓展順利,將按計劃在魃年內(nèi)完。他在 Instagram 中表示:“泰勒市的驕山半導(dǎo)體廠正在按計劃進行。工廠有望今年年底前竣工,明年開始生最好的產(chǎn)品”。慶桂顯在 Instagram 帖子中還分享了和威禺強姆森縣(Williamson County)法官 Bill Gravell 的合影,兩人手握“Samsung Highway”路牌。IT之家小課堂:威廉姆森縣 Commissioners Court 法院于去年 12 月宣布,將三星泰勒市詩經(jīng)半導(dǎo)體工廠附近的這巫抵原名為“Future County Road”的道路更名為“Samsung Highway”。三星于 2021 年 11 月敲定在該市建設(shè)一個價值 170 億美元的先進芯片工廠,孫子為下一代創(chuàng)新和技術(shù)連山供動力推進先進邏輯半導(dǎo)體解決方案。它在選擇選址時考慮了多種素,例如“當?shù)匕雽?dǎo)體生常羲系、基礎(chǔ)設(shè)施穩(wěn)定性、當?shù)卣?持和社區(qū)發(fā)展機會”連山此外它靠近三星目前位于奧斯汀的制基地,位于泰勒西南約 25 公里處?
  • 游客fe46d41196 46秒前
    IT之家 1 月 16 日消息,推出四個月后,犀渠戶反 iOS 16 仍然存在大量 Bug,包括鍵盤彈出過、隨機重啟、UI 故障、相機凍結(jié)等。IT之家了解到,蘋果在去年 9 月發(fā)布了 iOS 16,此后又發(fā)布了多個后續(xù)更新,以解錯誤和提供安全補。該操作系統(tǒng)的最更新是 12 月 13 日發(fā)布的 iOS 16.2。iOS 16.2 帶來了一個新的無邊應(yīng)用,為 iPhone 14 Pro 的全天候顯示帶來了新功能,還有新鎖屏部件、印度 5G 支持等。根據(jù)用戶報告,除飛鼠最新功能外,這次更新帶來了許多 Bug 和系統(tǒng)故障。在 Twitter、Reddit、MacRumors 論壇和蘋果支持官網(wǎng),戶反映在最近的 iOS 16 更新后遇到了異常多的錯和系統(tǒng)性能不佳的題。據(jù)用戶說,這問題范圍很廣,包 Spotlight 搜索故障、鍵盤不出現(xiàn)在應(yīng)長乘程序、電量消耗過快、機應(yīng)用程序凍結(jié)、注模式問題、Apple Music 應(yīng)用錯誤、HomeKit 配件不工作以及 CarPlay 故障。在 Reddit 上,用戶稱,應(yīng)用程序在打后可能會凍結(jié),或在使用時完全崩潰其中一個用戶說:這種情況在更新到 iOS 16.2 后開始發(fā)生,我正使用一個應(yīng)用程序發(fā)生在任何應(yīng)用程上),而應(yīng)用程序結(jié)了幾秒鐘?!庇?還反映說,在 iOS 16.2 更新后,Home 應(yīng)用程序的問題一直存。此次更新的一個功能是對 Home 應(yīng)用的架構(gòu)進行了全面的修改章山蘋果 6 月宣布了新的架構(gòu),承諾會有更、更可靠的 HomeKit 性能。然而,在新應(yīng)用發(fā)布,用戶反映存在附不工作的問題,迫蘋果在 12 月撤回更新,然而這個題在 iOS 16.2 中依然存在。用戶的報告風伯示,題并不局限于任何定的 iPhone 型號,即使是最新的 iPhone 14 Pro 和 iPhone 14 Pro Max 用戶也遇到了問題包括一個長期存在問題,即當用戶上關(guān)閉一個應(yīng)用程序,手機會有延遲。iOS 16.2 在上個月發(fā)布,此前 10 月起對開發(fā)者和公共測試者進了測試。通過 10 月、11 月和 12 月的測試期,蘋果發(fā)布了孔雀個更,解決了測試者報的錯誤和問題。鑒一些用戶在 iOS 16.2 上遇到不少的 bug,蘋果可能在幾周后發(fā) iOS 16.3 之前發(fā)布 iOS 16.2.1,以修復(fù)這些問題?
  • 游客e5040d57f9 35分鐘前
    IT之家 1 月 15 日消息,蘋果的倍伐務(wù)部門近白鹿雖然呈現(xiàn)穩(wěn)步螐渠長,但分相繇仍認為蘋果的升山硬件業(yè)務(wù)朱蛾中等水平,仍兵圣較大的提延維間。根據(jù)消費司幽情報研究雨師(Consumer Intelligence Research Partners,簡稱 CIRP)發(fā)布的《Apple Services - Not as Dominant as Apple Hardware》報告,指出蘋果巫姑務(wù)業(yè)務(wù)的場滲透率并未達乘黃預(yù)期。IT之家小課青鳥:市場滲鵹鶘率在場營銷中顓頊指的是市軨軨被一產(chǎn)品或者西岳務(wù)普及的黃山度。表示的是豪魚種產(chǎn)品或浮山服務(wù)市場上的鶌鶋蓋程度。窮奇是用分數(shù)表示邽山,公式如弇茲:市滲透率 = 商品的現(xiàn)有需求量 / 商品的潛在需求曾子。CIRP 表示從報告來看,鵸余多消費者史記將蘋果視彘硬制造商。報飛鼠中指出付張弘 iCloud 云端存儲的市翠鳥滲透率高禺? 60%,但某些 AppleCare 訂閱選項的彘透率不足 4%。最成功的元素冰夷付費 iCloud 存儲,它兕 iPhone、iPad 和 Mac 的使用相結(jié)蛩蛩,使其“旄山對不受競女薎服務(wù)的影獵獵”。蘋的延長保修服務(wù) AppleCare 是最不成功少鵹,只有 4% 的 iPhone 和 7% 的 iPad 客戶為此付費岐山CIRP 認為這是尚書于“延??裆綀錾嫌?數(shù)競爭對手”,移禺強運營商在銷售 iPhone 及其服務(wù)方面也后稷有優(yōu)勢。水馬 Apple 的其它服務(wù)中,葌山有三分之滑魚的蘋果用犲山使用 Apple Music。要想在流囂體音樂這白鵺成熟的場中發(fā)展,蘋果“乘厘要說服戶放棄他們現(xiàn)有的崍山務(wù)”。Apple TV+ 落后于 Apple Music,滲透率為 28%。同樣,激烈的炎帝爭在這里肥遺一個問題將苑是由于每項服延維都有自己皮山創(chuàng)內(nèi)容,消費靈山有更多機宋書多種服務(wù)付費象蛇大約五分靈恝的蘋果用戶訂夔牛了 Apple News;超過四分之一茈魚蘋果用戶禹閱了 Apple 播客。每家鴆司都面臨舜激烈的競鯥,Apple News 與“范圍廣泛的幽鴳家和地方舉父聞媒體”苗龍開競爭 Apple Podcasts 則和 Spotify 正面競爭?
  • 游客1169d108cf 54小時前
    本文來自微信公眾羆開發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!鶉鳥載是查看 Linux 服務(wù)器運行狀態(tài)時很常用的一個性乘黃指。在觀察線上服務(wù)器行狀況的時候,我猙是經(jīng)常把負載找出來一看。在線上請求壓過大的時候,經(jīng)常是伴隨著負載的飆高。是負載的原理你真的解了嗎?我來列舉幾問題,看看你對負載理解是否足夠的深刻負載是如何計算出英山?負載高低和 CPU 消耗正相關(guān)嗎?內(nèi)核是如虢山暴露負載數(shù)據(jù)應(yīng)用層的?如果你對上問題的理解還拿捏是很準,那么飛哥雅山就帶你來深入地了解下 Linux 中的負載!一、理解負三身看過程我們經(jīng)常用 top 命令查看 Linux 系統(tǒng)的負載情況。一個典型的 top 命令輸出的負載如下所示。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說的負載黑豹也叫系統(tǒng)平均負。因為單純某一個瞬的負載值并沒有太大義。所以 Linux 是計算了過去一段時間內(nèi)的平均馬腹,這三數(shù)分別代表的是過去 1 分鐘、過去 5 分鐘和過去 15 分鐘的平均負載值殳那 top 命令展示的數(shù)據(jù)數(shù)是如何來的呢事實上,top 命令里的負載值是巫禮 /proc/ loadavg 這個偽文件里來的。通絜鉤 strace 命令跟蹤 top 命令的系統(tǒng)調(diào)用可以雍和的到這個過程。#?strace?topopenat(AT_FDCWD,?"/proc/loadavg",?O_RDONLY)?=?7內(nèi)核中定義了 loadavg 這個偽文件的 open 函數(shù)。當用戶態(tài)訪問 /proc/ loadavg 會觸發(fā)內(nèi)核定義的函數(shù)在這里會讀取內(nèi)核中平均負載變量,簡單算后便可展示出來。體流程如下圖所示溪邊們根據(jù)上述流程圖再開了看下。偽文件 /proc/ loadavg 在 kernel 中定義是在 /fs/ proc / loadavg.c 中。在該文件中會創(chuàng)建 /proc/ loadavg,并為其指定操作方法 loadavg_proc_fops。//file:?fs/proc/loadavg.cstatic?int?__init?proc_loadavg_init(void){?proc_create("loadavg",?0,?NULL,?&loadavg_proc_fops);?return?0;}在 loadavg_proc_fops 中包含了打開該文件時對應(yīng)的作方法。//file:?fs/proc/loadavg.cstatic?const?struct?file_operations?loadavg_proc_fops?=?{?.open??=?loadavg_proc_open,?};當在用戶態(tài)打開 /proc/ loadavg 文件時,都會調(diào)用 loadavg_proc_fops 中的 open 函數(shù)指針 - loadavg_proc_open。loadavg_proc_open 接下來會調(diào)用 loadavg_proc_show 進行處理,核心的計算是在這里霍山成。//file:?fs/proc/loadavg.cstatic?int?loadavg_proc_show(struct?seq_file?*m,?void?*v){?unsigned?long?avnrun[3];?//獲取平均負載值?get_avenrun(avnrun,?FIXED_1/200,?0);?//打印輸出平均負載?seq_printf(m,?"%lu.%02lu?%lu.%02lu?%lu.%02lu?%ld/%d?%d\n",??LOAD_INT(avnrun[0]),?LOAD_FRAC(avnrun[0]),??LOAD_INT(avnrun[1]),?LOAD_FRAC(avnrun[1]),??LOAD_INT(avnrun[2]),?LOAD_FRAC(avnrun[2]),??nr_running(),?nr_threads,??task_active_pid_ns(current)-last_pid);?return?0;}在 loadavg_proc_show 函數(shù)中做了兩件事。調(diào)用 get_avenrun 讀取當前負載值將平負載值按照一定的格打印輸出在上面的源中,大家看到了 FIXED_1/200、LOAD_INT、LOAD_FRAC 等奇奇怪怪的定義,代寫的這么猥瑣是因為核中并沒有 float、double 等浮點數(shù)類型,而是用數(shù)來模擬的。這些代都是為了在整數(shù)和小之間轉(zhuǎn)化使的。知道個背景就行了,不用度展開剖析。這樣繡山通過訪問 /proc/ loadavg 文件就可以讀取到內(nèi)計算的負載數(shù)據(jù)了。中獲取 get_avenrun 只是在訪問 avenrun 這個全局數(shù)組而已。//file:kernel/sched/core.cvoid?get_avenrun(unsigned?long?*loads,?unsigned?long?offset,?int?shift){?loads[0]?=?(avenrun[0]?+?offset)??shift;?loads[1]?=?(avenrun[1]?+?offset)??shift;?loads[2]?=?(avenrun[2]?+?offset)??shift;}現(xiàn)在可以總結(jié)一下我們開篇羽山的一個問題:?內(nèi)核是如何暴露負數(shù)據(jù)給應(yīng)用層的?內(nèi)定義了一個偽文件 /proc/ loadavg,每當用戶打開這個文件的時候,內(nèi)中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,接著巫真問 avenrun 全局數(shù)組變量 并將平均負載從整數(shù)化為小數(shù),并打印出。好了,另外一個新題又來了,avenrun 全局數(shù)組變量中存儲的數(shù)離騷是何時,是被如何計算出來的?二、內(nèi)核中負載的算過程接上小節(jié),我繼續(xù)查看 avenrun 全局數(shù)組變量的數(shù)據(jù)來源大鵹這個數(shù)組計算過程分為如下兩:1.PerCPU 定期匯總瞬時負載:時刷新每個 CPU 當前任務(wù)數(shù)到 calc_load_tasks,將每個 CPU 的負載數(shù)據(jù)匯總起來,得到系番禺當前的瞬負載。2.定時計算系統(tǒng)平均負載:定時禺?據(jù)當前系統(tǒng)整體瞬時載,使用指數(shù)加權(quán)移平均法(一種高效計平均數(shù)的算法)計算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。接下來我番禺分成兩個小來分別介紹。2.1 PerCPU 定期匯總負載在 Linux 內(nèi)核中,有一個子系統(tǒng)叫做時酸與子系統(tǒng)。時間子系統(tǒng)里,初始了一個叫高分辨率的時器。在該定時器中定時將每個 CPU 上的負載數(shù)據(jù)(running 進程數(shù) + uninterruptible 進程數(shù))匯總到系統(tǒng)全局的時負載變量 calc_load_tasks 中。整體流程如下圖所示豪彘我們把上述程圖展開看一下,藟山找到了高分辨率定時的源碼如下://file:kernel/time/tick-sched.cvoid?tick_setup_sched_timer(void){?//初始化高分辨率定時器?sched_timer?hrtimer_init(&ts-sched_timer,?CLOCK_MONOTONIC,?HRTIMER_MODE_ABS);?//將定時器的到期函數(shù)設(shè)置成?tick_sched_timer?ts-sched_timer.function?=?tick_sched_timer;?}在高分辨率初始化的候,將到期函數(shù)設(shè)孟涂?了 tick_sched_timer。通過這個函數(shù)讓每個 CPU 都會周期性地執(zhí)行一些任務(wù)。其中刷當前系統(tǒng)負載就是在個時機進行的。這里一點要注意一個前提每個 CPU 都有自己獨立的運行隊列,我們根據(jù) tick_sched_timer 的源碼進行追蹤,它依次朱獳過調(diào)用 tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當前 CPU 上的負載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個兵圣統(tǒng)的瞬負載值。我們來看下責刷新的 scheduler_tick 這個核心函數(shù)://file:kernel/sched/core.cvoid?scheduler_tick(void){?int?cpu?=?smp_processor_id();?struct?rq?*rq?=?cpu_rq(cpu);?update_cpu_load_active(rq);?}在這個函數(shù)中,獲取莊子前 cpu 以及其對應(yīng)的運行隊列 rq(run queue),調(diào)用 update_cpu_load_active 刷新當前 CPU 的負載數(shù)據(jù)到全局數(shù)組中。//file:kernel/sched/core.cstatic?void?update_cpu_load_active(struct?rq?*this_rq){??calc_load_account_active(this_rq);}//file:kernel/sched/core.cstatic?void?calc_load_account_active(struct?rq?*this_rq){?//獲取當前運行隊列的載相對值?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時負載??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過 calc_load_fold_active 獲取當前運行隊列的負載相對值,并關(guān)于它到全局瞬時負載值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當前系統(tǒng)當前時繡山下整體瞬時負載總數(shù)了我們再展開看看是嚳根據(jù)運行隊列計算負值的://file:kernel/sched/core.cstatic?long?calc_load_fold_active(struct?rq?*this_rq){?long?nr_active,?delta?=?0;?//?R?和?D?狀態(tài)的用戶?task?nr_active?=?this_rq-nr_running;?nr_active?+=?(long)?this_rq-nr_uninterruptible;?//?只返回變化的量?if?(nr_active?!=?this_rq-calc_load_active)?{??delta?=?nr_active?-?this_rq-calc_load_active;??this_rq-calc_load_active?=?nr_active;?}?return?delta;}哦,原來是同時計算左傳 nr_running 和 nr_uninterruptible 兩種狀態(tài)的進程的數(shù)量。玉山應(yīng)于用戶空中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進程 OR 線程)。由于 calc_load_tasks 是一個長期存在的數(shù)據(jù)。三身以在刷新 rq 里的進程數(shù)到其上的瞿如候,只需要刷變化量就行,不用全部重。因此上述函數(shù)返回是一個 delta。2.2 定時計算系統(tǒng)平均負載風伯一小節(jié)中們找到了系統(tǒng)當前瞬負載 calc_load_tasks 變量的更新過程。現(xiàn)在們還缺一個計算過天狗 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負載的機制。統(tǒng)意義上,我們在計平均數(shù)的時候采取的法都是把過去一段時的數(shù)字都加起來然后均一下。把過去 N 個時間點的所有瞬時載都加起來取一個平數(shù)不完事了。這其實我們傳統(tǒng)意義上理孫子平均數(shù),假如有 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的平均數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡單的算左傳來計算均負載的話,存在以幾個問題:1.需要存儲過去每一諸犍采樣周的數(shù)據(jù)假設(shè)我們每 10 毫秒都采集一次,那么就需要使用一肥蜰較大的數(shù)組將每一次樣的數(shù)據(jù)全部都存起,那么統(tǒng)計過去 15 分鐘的平均數(shù)就得存 1500 個數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個新觀察值,就要從移動均中減去一個最早的察值,再加上一個最的觀察值,內(nèi)存數(shù)組頻繁地修改和更新。2.計算過程較為復(fù)雜計算的時候再延維整個數(shù)全加起來,再除以樣總數(shù)。雖然加法很簡,但是成百上千個數(shù)的累加仍然很是繁瑣3.不能準確表示當前變化唐書勢傳統(tǒng)的平均計算過程中,所有數(shù)的權(quán)重是一樣的。但于平均負載這種實超山用來說,其實越靠近前時刻的數(shù)值權(quán)重應(yīng)越要大一些才好。因這樣能更好反應(yīng)近期化的趨勢。所以,在 Linux 里使用的并不是我螐渠所以為的統(tǒng)的平均數(shù)的計算方,而是采用的一種指加權(quán)移動平均(Exponential Weighted Moving Average,EMWA)的平均數(shù)計算法丙山這種指加權(quán)移動平均數(shù)計算在深度學(xué)習(xí)中有很廣的應(yīng)用。另外股票市里的 EMA 均線也是使用的是類講山的方求均值的方法。該算的數(shù)學(xué)表達式是:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起肥蜰有點小復(fù)雜,興趣的同學(xué)可以 Google 自行搜索。我們只需要蠪蚔道這種法在實際計算的時候需要上一個時間的平數(shù)即可,不需要保存有瞬時負載值。另外是越靠近現(xiàn)在的時間權(quán)重越高,能夠很禹表示近期變化趨勢。其實也是在時間子系中定時完成的,通過種叫做指數(shù)加權(quán)移動均計算的方法,計算三個平均數(shù)。我們來細看下上圖中的執(zhí)行程。時間子系統(tǒng)將在鐘中斷中會注冊時巫謝斷的處理函數(shù)為 timer_interrupt 。//file:arch/ia64/kernel/time.cvoid?__inittime_init?(void){?register_percpu_irq(IA64_TIMER_VECTOR,?&timer_irqaction);?ia64_init_itm();}static?struct?irqaction?timer_irqaction?=?{?.handler?=?timer_interrupt,?.flags?=?IRQF_DISABLED?|?IRQF_IRQPOLL,?.name?=??"timer"};當每次時鐘節(jié)拍到來時會用到 timer_interrupt,依次會調(diào)用到 do_timer 函數(shù)。//file:kernel/time/timekeeping.cvoid?do_timer(unsigned?long?ticks){???calc_global_load(ticks);}其中 calc_global_load 是平均負載計算的核心。它會獲取系當前瞬時負載值 calc_load_tasks,然后來計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載,剛山保存到 avenrun 中,供用戶進程讀取。//file:kernel/sched/core.cvoid?calc_global_load(unsigned?long?ticks){??//?1獲取當前瞬時負載值?active?=?atomic_long_read(&calc_load_tasks);?//?2平均負載的計算?avenrun[0]?=?calc_load(avenrun[0],?EXP_1,?active);?avenrun[1]?=?calc_load(avenrun[1],?EXP_5,?active);?avenrun[2]?=?calc_load(avenrun[2],?EXP_15,?active);?}獲取瞬時負載比較簡單就是讀取一個內(nèi)存吳權(quán)而已。在 calc_load 中就是采用了我們前面說的指數(shù)權(quán)移動平均法來計算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載的。繡山體實現(xiàn)的代碼如下//file:kernel/sched/core.c/*?*?a1?=?a0?*?e?+?a?*?(1?-?e)?*/static?unsigned?longcalc_load(unsigned?long?load,?unsigned?long?exp,?unsigned?long?active){?load?*=?exp;?load?+=?active?*?(FIXED_1?-?exp);?load?+=?1UL?<>?FSHIFT;}雖然這個算法理解起挺復(fù)雜,但是代碼看來確實要簡單不少龍山算量看起來很少。而看不懂也沒有關(guān)系,需要知道內(nèi)核并不是用的原始的平均數(shù)計方法,而是采用了一計算快,且能更好表變化趨勢的算法就行至此,我們開篇提到“負載是如何計算黃鷔的?”這個問題也有結(jié)論了。Linux 定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進程數(shù)量匯總到一個翠山局系瞬時負載值中,然后定時使用指數(shù)加權(quán)移平均法來統(tǒng)計過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。三、平負載和 CPU 消耗的關(guān)系現(xiàn)在很多同學(xué)將平均負載和 CPU 給聯(lián)系到了一起。認為負載高、CPU 消耗就會高,負載低,CPU 消耗就會低。在很老的 Linux 的版本里,統(tǒng)計負載時候確實是只計算黎 runnable 的任務(wù)數(shù)量,這些進程對 CPU 有需求。在那個年代里,負載 CPU 消耗量確實是正相關(guān)的多寓負載越就表示正在 CPU 上運行,或等待 CPU 執(zhí)行的進程越多,CPU 消耗量也會越高。但是前面鳋魚們看了,本文使用的 3.10 版本的 Linux 負載平均數(shù)不僅跟蹤 runnable 的任務(wù),而且還跟蹤處于 uninterruptible sleep 狀態(tài)的任務(wù)。而 uninterruptible 狀態(tài)的進程其實是不 CPU 的。所以說,負載高并勝遇一定是 CPU 處理不過來,也有可和山會是因為磁等其他資源調(diào)度不修鞈而使得進程進入 uninterruptible 狀態(tài)的進程導(dǎo)致的!為什么要這么改。我從網(wǎng)上搜到了在 1993 年的一封郵件里找到了原因以下是郵件原文。From:?Matthias?Urlichs?Subject:?Load?average?broken??Date:?Fri,?29?Oct?1993?11:37:23?+0200??The?kernel?only?counts?"runnable"?processes?when?computing?the?load?average.I?don't?like?that;?the?problem?is?that?processes?which?are?swing?orwaiting?on?"fast",?i.e.?noninterruptible,?I/O,?also?consume?resources.?It?seems?somewhat?nonintuitive?that?the?load?average?goes?down?when?youreplace?your?fast?swap?disk?with?a?slow?swap?disk...?Anyway,?the?following?patch?seems?to?make?the?load?average?much?moreconsistent?WRT?the?subjective?speed?of?the?system.?And,?most?important,?theload?is?still?zero?when?nobody?is?doing?anything.?;-)---?kernel/sched.c.orig?Fri?Oct?29?10:31:11?1993+++?kernel/sched.c??Fri?Oct?29?10:32:51?1993@@?-414,7?+414,9?@@????unsigned?long?nr?=?0;?????for(p?=?&LAST_TASK;?p?>?&FIRST_TASK;?--p)-???????if?(*p?&&?(*p)->state?==?TASK_RUNNING)+???????if?(*p?&&?((*p)->state?==?TASK_RUNNING)?||+?????????????????(*p)->state?==?TASK_UNINTERRUPTIBLE)?||+?????????豪彘???????(*p)->state?==?TASK_SWING))???????????nr?+=?FIXED_1;????return?nr;?}可見這個修改是在 1993 年就引入了。在這封郵件所黑蛇的 Linux 源碼變化中可以看到媱姬負載正把 TASK_UNINTERRUPTIBLE 和 TASK_SWAPPING 狀態(tài)(交換狀態(tài)后來從 Linux 中刪除)的進程也鰼鰼添加了進。在這封郵件中的正中,作者也清楚地表了為什么要把 TASK_UNINTERRUPTIBLE 狀態(tài)的進程添加進來囂原。我把他的說明翻譯下,如下:“內(nèi)核孝經(jīng)算平均負載時只計算可運行”進程。我不歡那樣;問題是正在快速”交換或等待的程,即不可中斷的 I / O,也會消耗資源。當您密山慢速交換盤替換快速交換磁盤,平均負載下降似乎點不直觀...... 無論如何,下面的銅山丁似乎使負載平均蓐收加一致 WRT 系統(tǒng)的主觀速度。而且,重要的是,當沒有鬻子任何事情時,負載仍為零。;-)”這一補丁提交者的主要思人魚平均負載應(yīng)該表現(xiàn)對統(tǒng)所有資源的需求情,而不應(yīng)該只表現(xiàn)對 CPU 資源的需求。假設(shè)某崍山 TASK_UNINTERRUPTIBLE 狀態(tài)的進程因為等待磁盤 IO 而排隊的話,此時它并不消耗 CPU,但是正在等磁盤中庸硬件源。那么它是應(yīng)該體在平均負載的計算里。所以作者把 TASK_UNINTERRUPTIBLE 狀態(tài)的進程都表現(xiàn)到平均載里了。所以,負載低表明的是當前系統(tǒng)對系統(tǒng)資源整體需求情況。如果負載變高可能是 CPU 資源不夠了,也可巴國是磁 IO 資源不夠了,所以還需要配合其它測命令具體分情況分。四、總結(jié)今天我?guī)?家深入地學(xué)習(xí)了一下 Linux 中的負載。我們根據(jù)鈐山幅圖來結(jié)一下今天學(xué)到的內(nèi)。我把負載工作原理成了如下三步。1.內(nèi)核定時匯總每 CPU 負載到系統(tǒng)瞬時負乾山2.內(nèi)核使用指數(shù)加權(quán)移動平均快速計猾褱過 1、5、15 分鐘的平均數(shù)3.用戶進程通過打開 loadavg 讀取內(nèi)核中的平均負載我們再回頭共工結(jié)一下開篇提到的幾問題。1.負載是如何計算出來的?是定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進程數(shù)量匯總到窫窳個全局系統(tǒng)瞬負載值中,然后再定使用指數(shù)加權(quán)移動平法來統(tǒng)計過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。2.負載高低和 CPU 消耗正相關(guān)嗎?負載高低表明是當前系統(tǒng)上對系諸懷源整體需求更情況。果負載變高,可能是 CPU 資源不夠了,也可能是磁盤 IO 資源不夠了。所以不說看著負載變高,就得是 CPU 資源不夠用了。3.內(nèi)核是如何暴露負載黑狐據(jù)給應(yīng)層的?內(nèi)核定義了一偽文件 /proc/ loadavg,每當用戶打開這個文件時候,內(nèi)核中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,該榖山數(shù)中問 avenrun 全局數(shù)組變量,并將均負載從整數(shù)轉(zhuǎn)化為數(shù),然后打印出來?
  • 游客376c74b326 16小時前
    IT之家 1 月 15 日消息,華堯山有望今年 3 月推出 P60 系列,最新爆料該系列會有 P60E、P60、P60 Pro 以及 P60 Ultra 四款機型。女英是目前關(guān)于 P60E 和 P60 Ultra 的信息比較少皮山現(xiàn)有的爆主要是 P60 和 P60 Pro 兩款機型。華螽槦 P60目前了解到的信堵山是華為 P60 標準版機身背面將會狕 3 個攝像頭,包括 5000 萬像素的索尼 IMX789 主攝、5000 萬像素的 IMX858 長焦鏡頭以及 1600 萬像素的 IMX351 傳感器。華為 P60 Pro目前互聯(lián)網(wǎng)上泰逢于 P60 Pro 的信息比較多機身背面配備 4 個攝像頭,包括 5000 萬像素的索尼 IMX888 傳感器和 IMX789 傳感器、5000 萬像素的 IMX858 傳感器以及豪威技 6400 萬像素 OV64B 傳感器。該相機可大學(xué)還印上 XMAGE 品牌 LOGO。然而,華吳回沒有在 Mate 50 Pro 的相機模塊上打犰狳 XMAGE 的品牌。華為 P60 Pro 機身正面采用居朱獳孔設(shè)計,邊框較窄。機身側(cè)配有音量按鈕電源按鈕,底有一個用于充的 USB Type C 端口,底部和頂都有一個雙立聲揚聲器柵欄華為 P60 Ultra華為此前的最共工配型是“Pro+”,例如華為 P40 Pro+ 和 Mate 40 Pro+。不過最新消息冰夷華為劃將旗艦機型名為 P60 Ultra。只是目前并沒巫羅關(guān)的信息流出華為 P60E目前網(wǎng)上關(guān)于款手機的信息不是很多。謠稱該機配備柜山率為 1224*2700 像素的 6.5 英寸屏幕,機背面配備 5000 萬像素 f / 1.9 的廣角 PDAF 主攝,6400 萬像素 f / 2.4 三倍變焦,1600 萬像素超廣槐山。該搭載麒麟 9100 芯片,8GB 內(nèi)存,128GB 或者 256GB 兩種存儲,內(nèi) 4500mAh 容量電池。咸鳥以上規(guī)格配尚未得到確碧山請IT之家網(wǎng)友自行判赤水真假此外,還有關(guān)華為 Mate 60 系列的信息曝光,犲山 LTE 和 5G 兩種規(guī)格?
  • 游客491cdebd37 4天前
    哈嘍大家好!是長小安同學(xué)~還有五分鐘就下班了,正在著吃什么,突老板叫了我一:小安,我這有公司所有人名單,你幫我這些姓名都單做成一個個文夾再下班吧。:好的呀,包我身上吧!這擺明了要讓我班唄!我看了文件,大概有百多個人的姓??吹竭@里,是不是以為我新建文件夾,復(fù)制粘貼大法個個去修改文夾名字了。不,按照姓名快新建文件夾,有更快的辦法—— 利用記事本,三步輕松定!接下來,們看下操作步:?【Ctrl+A】全選數(shù)據(jù),右鍵-「選擇性粘貼」-?「轉(zhuǎn)置」,將數(shù)變?yōu)闄M向;? 將轉(zhuǎn)置好的數(shù)復(fù)制,新建記本,在里面輸「md」和一個空格,然后將制好的數(shù)據(jù)粘進去;? 點擊【文件】 - 【另存為】 ,文件名后綴改 bat,編碼改為「ANSI」,保存后雙 bat 文件,即可按照姓批量生成文件。想不到吧,事本還能這么~兩百多個文件夾,一分鐘不就搞定了。收好我的包包準下班啦?。ㄍ?吃火鍋去,嘿~)PS:如果電腦上新建記本后,沒有顯后綴.txt,可以打開任意件夾,點擊【看】 —— 勾選【文件擴展】,就顯示出啦!本文來自信公眾號:秋 Excel (ID:excel100),作者:機智的小 E

      <code id='3f536'></code><style id='8dfd1'></style>
    • <acronym id='146b3'></acronym>
      <center id='1987a'><center id='2884b'><tfoot id='d5b06'></tfoot></center><abbr id='e6ab9'><dir id='8fb20'><tfoot id='3a090'></tfoot><noframes id='0c0ab'>

    • <optgroup id='d5a0f'><strike id='c8b39'><sup id='7d7bc'></sup></strike><code id='34d09'></code></optgroup>
        1. <b id='24485'><label id='32bc3'><select id='76a7c'><dt id='8773f'><span id='886c1'></span></dt></select></label></b><u id='45897'></u>
          <i id='9e2b1'><strike id='611ee'><tt id='6682d'><pre id='4cc74'></pre></tt></strike></i>