標題: 應用程式導引之虛擬記憶體管理系統
Application-Navigated Virtual-Memory Management System
作者: 李照賢
Lee, Chao-Hsien
張瑞川
Reui-Chuan Chang
資訊科學與工程研究所
關鍵字: 虛擬記憶體;作業系統;解譯;緩衝記憶體;置換;微核心;virtual memory;operating system;interpretation;memory cache;replacement;microkernel
公開日期: 1997
摘要: 傳統作業系統在檔案系統及虛擬記憶體系統上﹐使用了緩衝記憶體技術 ﹐ 以縮短硬碟和微處理機執行效能上差距過大的問題。但由於系統核心 軟體無法 預知應用程式存取資料的模式﹐傳統的緩衝記憶體管理技術﹐ 並不能適用所有 的應用程式﹐進而導致應用程式本身及整體電腦系統效 能的低落。 有鑑於此﹐本篇論文提出並實作完成新的虛擬記憶體管理機 制﹐以有效地 提升應用程式本身的效能﹐及增加整體電腦系統的單位時 間工作量。本篇論文 的最主要貢獻﹐在於將虛擬記憶體管理機制分成二 部分: 核心程式只管理記憶體 的配置﹐而其餘管理的方法﹐則交由應用 程式來導引執行。在實作上﹐主要可 分為二個部份﹕第一為核心內策略 解譯器﹐用以支援應用程式端的記憶體管理﹐ 並具有系統保護機制,用以 保護整個系統不受應用程式的破壞或獨佔﹐第二為系 統記憶體回收演算 法﹐以便讓應用程式可以公平地共享記憶體。除此之外﹐尚 有兩個系統 輔助工具﹐用以幫助應用程式設計者能夠了解他們所設計的應用程 式之 存取特色﹐進而能夠最有效地調整虛擬記憶體管理策略﹐以滿足應用程式 的需要。實驗證明﹐不論應用程式或系統整體效能都因此新的虛擬記憶體 管理 系統而大幅提昇. To bridge the performance gap between disks and microprocessors, conventional operating systems employed memory cache in file systems and virtual memory management systems. However, since the system kernels do not know applications' access patterns, the fixed memory-cache management scheme cannot meet all applications' needs. Application performance and system throughout are thus degraded. This dissertation proposes a new virtual memory management system, the hipec system, to effectively increase the application performance and system throughout. Hipec partitions the conventional virtual memory management scheme into two levels: the kernel only handles the allocations of memory cache, while the user applications are responsible for managing the allocated cache. Hipec includes two major implementations. The first is the in-kernel strategy interpreter for supporting application-navigated virtual memory management. The strategy interpreter also protects the system from misbehaved or malicious applications. The second is the kernel page-frame allocation policy, which can fairly share page frames among all running applications. In addition, in order to help application designers to observe the application access patterns, two auxiliary tools are implemented. Application designers, therefore, can tune the caching strategies to meet applications' specific needs. From empirical evaluations, hipec can improve the application performance and system throughput.
URI: http://140.113.39.130/cdrfb3/record/nctu/#NT860394003
http://hdl.handle.net/11536/62828
顯示於類別:畢業論文