PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
LinuxDev
[問題] Linux Read/Write buffer\cache問題
作者:
kimi9235
(惡人毛)
2020-07-31 14:23:17
Hi 各位大大好
最近在開發板錄影寫檔到USB隨身碟,由於4K frame過大,所以只要一寫檔就會讓buffer/c
ache吃滿滿。
但程式也不會突然中止,但寫完檔也不會還回去,除非將檔案移除後才會將buffer/cache
回到free的狀態,本來以為是自己程式有誤,拿DD去測試寫檔也是同樣問題。
(dd if=/dev/zero of=/mnt/usb/123.xxx bs=1M count=1K conv=fsync)
雖然有些文章是寫說,當有user program需要memory會優先釋放buffer/cache,但還是覺
得怪怪的,畢竟都會吃到memory剩下2~3MB,後來也開檔 mount下過sync,但還是會吃記憶
體,不知各位有沒有遇到這類問題。
作者:
leolarrel
(真.粽子無雙)
2020-07-31 17:50:00
看你的敘述蠻正常的呀
作者:
askacis
(ASKA)
2020-08-02 22:11:00
google POSIX_FADV_DONTNEED告訴kernel不要把你的檔案cache起來sync應該只是寫入IO,但還是會cache以防你之後用會用
作者:
kimi9235
(惡人毛)
2020-08-03 16:52:00
感謝askacis大,學到一課了!!!
作者:
os369510
(Jeremy)
2020-08-25 10:18:00
看不懂問題 覺得buffet cache 用太多可以drop cache
作者: aweilin
2020-09-14 08:49:00
Dropcache 如果是一直在寫入狀態下是無法free的,且有一些page也無法立即的被free掉,通常寫檔都是一直在寫
作者: jack7923love (黃小p)
2020-09-14 23:53:00
dirty_ratio?
繼續閱讀
[問題] mount fs
gn00618777
[問題] driver polling timer問題
howard6066
[問題] 如何提升自己的工作技能
chiaohuang
[問題] avilib問題
kimi9235
[問題] 核心模組使用 isolcpus
dces4212
Re: [問題] 如何關掉/打開 arm cpu 快取記憶體
hizuki
Re: [問題] porting issue(32bits-->8bits)
leolarrel
[問題] porting issue(32bits-->8bits)
ando5566
[問題] 請問make編譯建置卡死的問題
cia1099
[問題] 如何關掉/打開 arm cpu 快取記憶體
hirofumisyo
Links
booklink
Contact Us: admin [ a t ] ucptt.com