1 / 1

Virtual Memory

Process. DMEL (Dependable Memory management system for Embedded Linux). Lineo Solutions, Inc.

ilyssa
Download Presentation

Virtual Memory

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Process DMEL (Dependable Memory management system for Embedded Linux) Lineo Solutions, Inc. It is becoming necessary for embedded Linux systems which support non-genuine software (e.g. 3rd party software, Download software, etc). Such unpredictable software may consume so much resource in total. It possibly causes a situation in worse instable on the system. DMEL provides methods of managing processes, which look hard to predict resource consumption, in a group. DMEL also provides methods of reserving memory consumption of the group. This demo is an example of implementation of DMEL. It shows that the total memory consumption of three processes continue to keep below the “Warning level” by the DMEL’s effect, whose method consists of page cache reclaiming and sending a signal. When the system lacks in memory resources, Linux kernel reclaims page caches, and further runs OOM killer after the reclaiming of the page cache. Introducing account and control method for memory consumption of the registered processes, DMEL prevents OOM killer from killing important processes. Process Group management by CABI framework. DMEL accounts memory at the following two cases: a) when a page frame is allocated to the VM area. b) when a page cache is allocated. If the accounting value exceeds the threshold, DMEL uses the methods to reduce memory consumption. (See the figure below) Demonstration 1. A Group of the processes managed by DMEL (three in this demo) consumes physical memory independently. 2. DMEL detects that the total memory consumption has exceeds the “Warning level”. 3. If detected, (Method-1) DMEL reclaims page caches. (Method-2) DMEL sends a signal to the management process*. The management process instructs the processes in the group to release the memory.         * The management process is defined and implemented in this demo. Repeat from 1 to 3. VM area access Using DMEL results, user applications can start processing to suppress memory consumption. Virtual Memory DMEL AFTER page_fault BEFORE Memory accounting Important process a) alloc_pages() b) page_cache_alloc() Exceeds Warning level / Blocking level? Release memory A group of processes yes Over! try_to_free_pages() wakeup kswapd • Methods in Warning level • - page cache reclaiming • - send signal • select wakeup(Driver API) • Method in Blocking level • - memory blocking Total consumption is detected OOM killer Blocking level Warning level memory consumption Renesas MS7780SE03(SH-4A) - The patch is available in http://www.lineo.co.jp/downloads/downloads.html. - The latest patch will be available in http://sourceforge.net/projects/cabi/. (CABI Project @ sourceforge)

More Related