在C語言編程裏,最常見的內存問題就是使用了malloc分配的內存,忘記釋放(free)造成的內存泄漏。今天介紹一個內存檢測工具Valgrind。 在Linux系統上,如Unbuntu安裝Valgrind: apt-get install valgrind 我先寫一個內存泄漏的代碼,然後演示如何使用valgrind來找到泄漏點。
在現代Linux操作系統中,一個程序在運行時,進程是分配資源的基本單位,Linux內核先fork一個子進程,分配物理內存,然後將要執行的可執行文件加載到內存。每個進程都是相互獨立的,進程之間如果需要通信則需要藉助第三方工具。 不同的進程在切換運行時,CPU需要不停地保存現場、恢復現場,因此進程上下切換的開銷是很大的。所以如果程序要並行執行很多任務,
Linux內核在初始化過程中,會創建一個根目錄“/”,然後mount第一個文件系統到這個根目錄下,這個文件系統就被稱為根文件系統。其他的存儲分區、磁盤、SD卡、U盤接着就可以mount到根文件系統的某個目錄下。然後用户就可以通過文件接口訪問各個存儲設備。 在Linux中,一個根文件系統會包含Linux運行所需要的完整目錄和相關啓動腳本、