91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

Linux釋放內(nèi)存的方法

h1654155282.3538 ? 來(lái)源:運(yùn)維小筆記 ? 作者:運(yùn)維小筆記 ? 2021-02-21 10:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一般系統(tǒng)是不會(huì)自動(dòng)釋放內(nèi)存的 關(guān)鍵的配置文件/proc/sys/vm/drop_caches。這個(gè)文件中記錄了緩存釋放的參數(shù),默認(rèn)值為0,也就是不釋放緩存。它的值可以為0~3之間的任意數(shù)字,代表著不同的含義:

0:0是系統(tǒng)默認(rèn)值,默認(rèn)情況下表示不釋放內(nèi)存,由操作系統(tǒng)自動(dòng)管理

1:釋放頁(yè)緩存

2:釋放dentries和inodes

3:釋放所有緩存

實(shí)操:

所以根據(jù)上面的說(shuō)明,分別將1,2,3這3個(gè)數(shù)字重定向到drop_caches中可以實(shí)現(xiàn)內(nèi)存的釋放,一般釋放內(nèi)存都是重定向3到文件中,釋放所有的緩存

那么下面舉個(gè)例子,比如這里只釋放頁(yè)緩存,首先使用 free -h 查看當(dāng)前內(nèi)存剩余

當(dāng)前內(nèi)存剩余570M左右,另外buff/cache是1.3G,根據(jù)上面說(shuō)的現(xiàn)在真正的剩余內(nèi)存應(yīng)該是1.8G左右,首先寫緩存到文件系統(tǒng):

sync

然后執(zhí)行下面命令釋放內(nèi)存(頁(yè)緩存buff/cache):

echo 1 》 /proc/sys/vm/drop_caches

執(zhí)行完之后,再次查看內(nèi)存剩余:

會(huì)發(fā)現(xiàn)內(nèi)存被釋放了,可用內(nèi)存確實(shí)變?yōu)?.8G左右

到這里內(nèi)存就釋放完了,現(xiàn)在drop_caches中的值為1,如果現(xiàn)在想讓操作系統(tǒng)重新分配內(nèi)存,那么設(shè)置drop_caches的值為0即可:

echo 0 》 /proc/sys/vm/drop_caches

另外需要注意的是,在生產(chǎn)環(huán)境中的服務(wù)器我們不要頻繁的去釋放內(nèi)存,只在必要時(shí)候清理內(nèi)存即可,更重要的是我們應(yīng)該從應(yīng)用程序?qū)用嫒?yōu)化內(nèi)存的利用和釋放,經(jīng)常清理內(nèi)存可能只是暫時(shí)屏蔽的應(yīng)用程序中的一些bug,所以更重要的是程序的調(diào)優(yōu),其他的交給操作系統(tǒng)來(lái)管理
責(zé)任編輯人:CC

聲明:本文內(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)投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11770

    瀏覽量

    219110
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    9

    文章

    3213

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Linux內(nèi)核三大核心模塊深度解析:調(diào)度、內(nèi)存與I/O

    Linux內(nèi)核作為操作系統(tǒng)的核心,其進(jìn)程調(diào)度、內(nèi)存管理和文件I/O三大模塊共同決定了系統(tǒng)的性能與穩(wěn)定性。無(wú)論是多核服務(wù)器的高并發(fā)處理,還是嵌入式設(shè)備的資源受限場(chǎng)景,深入理解這些底層機(jī)制都是進(jìn)行性能調(diào)
    的頭像 發(fā)表于 03-12 09:00 ?54次閱讀
    <b class='flag-5'>Linux</b>內(nèi)核三大核心模塊深度解析:調(diào)度、<b class='flag-5'>內(nèi)存</b>與I/O

    Linux內(nèi)核伙伴系統(tǒng)內(nèi)存申請(qǐng)函數(shù)詳解:從原理到實(shí)戰(zhàn)

    Linux 內(nèi)核中,內(nèi)存管理是整個(gè)系統(tǒng)穩(wěn)定運(yùn)行的基石,而伙伴系統(tǒng)(Buddy System) 作為內(nèi)核物理內(nèi)存分配的核心機(jī)制,更是驅(qū)動(dòng)開發(fā)、內(nèi)核模塊開發(fā)的必備知識(shí)點(diǎn)。它通過(guò) "2 的冪
    的頭像 發(fā)表于 02-10 16:58 ?3640次閱讀
    <b class='flag-5'>Linux</b>內(nèi)核伙伴系統(tǒng)<b class='flag-5'>內(nèi)存</b>申請(qǐng)函數(shù)詳解:從原理到實(shí)戰(zhàn)

    Linux下擴(kuò)充Swap交換空間:解決內(nèi)存不足的實(shí)用指南,這些影響要注意!

    大家在使用 Linux 系統(tǒng)(比如常用的 Ubuntu)時(shí),是不是偶爾會(huì)遇到 “內(nèi)存不足” 的彈窗?比如運(yùn)行大型編譯任務(wù)、多開虛擬機(jī)、做數(shù)據(jù)分析,或者把 Linux 當(dāng)服務(wù)器用的時(shí)候,物理內(nèi)存
    的頭像 發(fā)表于 02-09 16:33 ?238次閱讀
    <b class='flag-5'>Linux</b>下擴(kuò)充Swap交換空間:解決<b class='flag-5'>內(nèi)存</b>不足的實(shí)用指南,這些影響要注意!

    Linux如何防止內(nèi)存沖突?

    在聊這個(gè)話題之前,我們先回憶一下單片機(jī)系統(tǒng)中是如何分配內(nèi)存的?如果沒(méi)有bootloader,那硬件環(huán)境起來(lái)之后就直接進(jìn)入主程序運(yùn)行,如果有引導(dǎo)程序bootloader,那就需要設(shè)置好跳轉(zhuǎn)地址,否則設(shè)置不對(duì),系統(tǒng)就無(wú)法啟動(dòng)了。
    的頭像 發(fā)表于 01-30 16:51 ?1364次閱讀
    <b class='flag-5'>Linux</b>如何防止<b class='flag-5'>內(nèi)存</b>沖突?

    keil中c語(yǔ)言的動(dòng)態(tài)分配內(nèi)存

    開辟,所以只用進(jìn)行一次內(nèi)存釋放;而第二種方法進(jìn)行了兩次動(dòng)態(tài)內(nèi)存開辟,并且其中一次是對(duì)結(jié)構(gòu)體內(nèi)部成員進(jìn)行的,如果我們的代碼是在一個(gè)給別人用的函數(shù)中,你在里面做了二次
    發(fā)表于 01-21 06:04

    【「Linux 設(shè)備驅(qū)動(dòng)開發(fā)(第 2 版)」閱讀體驗(yàn)】+讀深入理解Linux內(nèi)核內(nèi)存分配

    最近這段時(shí)間內(nèi)存條、硬盤的價(jià)格飛漲,隨著AI產(chǎn)品的興起,大數(shù)據(jù)模型的應(yīng)用,對(duì)硬件存儲(chǔ)要求的更高。這節(jié)閱讀有關(guān)Linux內(nèi)存管理方面的知識(shí)。 Linux系統(tǒng)使用了“虛擬
    發(fā)表于 01-16 20:05

    rk基于linux/android內(nèi)存管理

    一、內(nèi)存分布 ? U-Boot 由前級(jí) Loader 加載到 CONFIG_SYS_TEXT_BASE 地址,初始化時(shí)會(huì)探明當(dāng)前系統(tǒng)的總內(nèi)存容 量, 32 位平臺(tái)上認(rèn)為最大 4GB 可用(但是不影響
    的頭像 發(fā)表于 12-15 10:42 ?218次閱讀
    rk基于<b class='flag-5'>linux</b>/android<b class='flag-5'>內(nèi)存</b>管理

    Linux Swap交換空間詳解:Android編譯內(nèi)存不足?這樣擴(kuò)充立竿見影

    ? ? 在 ?Linux? 系統(tǒng)使用過(guò)程中,你是否遇到過(guò)? “ 內(nèi)存不足 ”? 的報(bào)錯(cuò)?比如編譯? Android? 源碼時(shí),明明按教程操作,卻因物理內(nèi)存沒(méi)達(dá)到? 16G? 要求而編譯中斷?這正是
    的頭像 發(fā)表于 12-06 08:10 ?4283次閱讀

    RTThread線程退出后rt_malloc動(dòng)態(tài)創(chuàng)建的資源沒(méi)有釋放怎么解決?

    測(cè)試過(guò)程中,在一個(gè)線程中用rt_malloc動(dòng)態(tài)創(chuàng)建4KB的資源,在線程運(yùn)行過(guò)程中用rt_thread_delete()使線程退出,用memtrace查看內(nèi)存分配情況,動(dòng)態(tài)創(chuàng)建的4KB的資源仍然存在
    發(fā)表于 10-13 07:06

    在使用rt_free釋放內(nèi)存時(shí)觸發(fā)了斷言,怎么解決?

    的, 就是代碼從循環(huán)改成回調(diào), 釋放就斷言了 內(nèi)存使用沒(méi)有問(wèn)題, 里面的內(nèi)容都好好的, 只有釋放錯(cuò)誤 這是斷言內(nèi)容, 這是什么意思
    發(fā)表于 09-29 07:02

    接收Ymedom文件后釋放內(nèi)存報(bào)錯(cuò),重啟怎么解決?

    測(cè)試OTA功能正常了,使用sy發(fā)送文件也是正常,使用ry接收數(shù)據(jù)后提示釋放內(nèi)存出錯(cuò)系統(tǒng)重啟了。這里困擾住了,文件已經(jīng)正常存放在根文件系統(tǒng)下
    發(fā)表于 09-28 09:07

    使用lv_label_set_text釋放內(nèi)存沒(méi)對(duì)齊是什么原因?qū)е碌模?/a>

    (guider_ui.monitor_label_pressure_now, "1"); rt_mutex_release(lv_mutex); // 釋放互斥鎖 使用lv_label_set_text導(dǎo)致釋放內(nèi)
    發(fā)表于 09-16 06:44

    Linux系統(tǒng)環(huán)境監(jiān)測(cè)終極指南

    Linux系統(tǒng)環(huán)境主要監(jiān)測(cè)CPU、內(nèi)存、磁盤I/O和網(wǎng)絡(luò)流量。
    的頭像 發(fā)表于 06-25 14:41 ?827次閱讀
    <b class='flag-5'>Linux</b>系統(tǒng)環(huán)境監(jiān)測(cè)終極指南

    SE5 ffmpeg例程內(nèi)存釋放的原因?

    行改造循環(huán)拉流。 問(wèn)題: 測(cè)試發(fā)現(xiàn),在循環(huán)開始前先從文件讀取約29M文件后(大于34M后釋放一部分),循環(huán)(拉取一段時(shí)間后,停止,再拉?。├∫曨l流時(shí),會(huì)出現(xiàn)內(nèi)存上升問(wèn)題。 測(cè)試場(chǎng)景:解碼6路
    發(fā)表于 04-22 11:04

    使用rt_free釋放內(nèi)存時(shí)觸發(fā)了斷言怎么解決?

    代碼從循環(huán)改成回調(diào), 釋放就斷言了 內(nèi)存使用沒(méi)有問(wèn)題, 里面的內(nèi)容都好好的, 只有釋放錯(cuò)誤 這是斷言內(nèi)容, 這是什么意思
    發(fā)表于 03-20 07:21