Duhee Lee's research while affiliated with Seoul National University and other places

What is this page?


This page lists the scientific contributions of an author, who either does not have a ResearchGate profile, or has not yet added these contributions to their profile.

It was automatically created by ResearchGate to create a record of this author's body of work. We create such pages to advance our goal of creating and maintaining the most comprehensive scientific repository possible. In doing so, we process publicly available (personal) data relating to the author as a member of the scientific community.

If you're a ResearchGate member, you can follow this page to keep up with this author's work.

If you are this author, and you don't want us to display this page anymore, please let us know.

Publications (5)


MRT-PLRU: A general framework for real-time multitask executions on NAND flash memory
  • Article

April 2013

·

54 Reads

·

7 Citations

IEEE Transactions on Computers

Duhee Lee

·

·

·

This paper proposes a novel technique called mRT-PLRU (Multitasking Real-Time constrained combination of Pinning and LRU), which forms a generic framework to use inexpensive nonvolatile NAND flash memory for storing and executing real-time programs in multitasking environments. In order to execute multiple real-time tasks stored in NAND flash memory with the minimal usage of expensive RAM, the mRT-PLRU is optimally configured in two steps. In the first step, the per-task analysis finds the function of RAM size versus execution time (and the corresponding optimal pinning/LRU combination) for each individual task. Using these functions for all the tasks as inputs, the second-step called a stochastic-analysis-in-loop optimization conducts an iterative convex optimization with the stochastic analysis for the probabilistic schedulability check. As a result, the optimization loop can optimally determine the RAM sizes for multiple tasks such that their deadlines are probabilistically guaranteed with the minimal size of total RAM. The usefulness of the developed technique is intensively verified through both simulation and actual implementation. Our experimental study shows that mRT-PLRU can save up to 80 percent of RAM required by the industry-common shadowing approach.

Share

RT-PLRU: A new paging scheme for real - Time execution of program codes on NAND flash memory for portable media players

August 2011

·

40 Reads

·

11 Citations

IEEE Transactions on Computers

NAND flash memory has been widely used as a nonvolatile storage for storing data. However, it is challenging to execute program codes on NAND flash memory, since NAND flash memory only supports page-based reads, not byte-level random reads. This paper proposes an automated process to find the optimal paging strategy called RT-PLRU (Real-Time constrained combination of Pinning and LRU) that allows program codes stored in NAND flash memory to be executed satisfying real-time requirements with minimal usage of RAM. Moreover, the proposed process optimally configure the RT-PLRU in a developer-transparent way without giving any burden to the program developer. The developed technique is specifically applied to a media player program targeting a portable media player (PMP). To the best of our knowledge, this is the first effort to use NAND flash memory as a code storage for storing and executing real-time programs with minimal usage of RAM.


A Generic Framework for Soft Real-Time Program Executions on NAND Flash Memory in Multi-Tasking Embedded Systems

December 2009

·

35 Reads

·

6 Citations

This paper proposes a novel technique called mRT-PLRU (multi-tasking real-time constrained combination of pinning and LRU), which forms a generic framework to use inexpensive nonvolatile NAND flash memory for storing and executing real-time programs in multi-tasking environments. In order to execute multiple real-time tasks stored in NAND flash memory with the minimal usage of expensive RAM, the mRT-PLRU is optimally configured in two steps. In the first step, the per-task analysis finds the function of RAM size vs. execution time for each individual task. Using these functions for all the tasks as inputs, the second-step called a stochastic-analysis-in-loop optimization conducts an iterative convex optimization with the stochastic-analysis for the probabilistic schedulability check. As a result, the optimization loop can optimally allocate RAM to multiple tasks such that their deadlines are probabilistically guaranteed with the minimal usage of RAM. Moreover, the mRT-PLRU is optimally configured in a developer-transparent way without giving any burden to the program developer, which is essential for the embedded system industry under a high pressure of time-to-market. The usefulness of the developed technique is intensively verified through both simulation and actual implementation. Our experimental study shows that mRT-PLRU can save up to 80% of RAM required by the industry-common shadowing approach.


Real-Time Program Execution on NAND Flash Memory for Portable Media Players

November 2008

·

78 Reads

·

16 Citations

·

Duhee Lee

·

·

[...]

·

Eun Yong Ha

NAND flash memory has been widely used as a non-volatile storage for storing data. However, it requires a large amount of SRAM for executing program codes stored in it since it only supports page-based reads, not byte-level random reads. This paper proposes a new paging mechanism called RT-PLRU (real-time constrained combination of pinning and LRU) that allows program codes stored in NAND flash memory to be executed satisfying real-time requirements with minimal usage of SRAM. Moreover, the RT-PLRU is optimally configured in a developer-transparent way without giving any burden to the program developer. The developed technique is specifically applied to a media player program targeting a PMP (portable medial player). To the best of our knowledge, this is the first effort to use NAND flash memory as a code storage for storing and executing real-time programs with minimal usage of SRAM.


Real-time code execution on NAND flash memory supporting wide-spectrum of input data for multiple tasks.

39 Reads

NAND flash memory is widely used as a secondary storage of embedded devices due to its attractive features such as small size, fast access speed, shock resistance, and low power con-sumption. Although it is extensively used as a nonvolatile storage for storing data, NAND flash memory requires a large amount of RAM for executing program codes since it does not supports byte-level random access and hence pro-gram code pages should be loaded into RAM from NAND flash before executing. In addition, executing several pro-grams concurrently needs a even larger RAM size. mRT-PLRU (multi-tasking Real-Time contrained Pinning and LRU combination) [8] has demonstrated a promising possibility of using NAND flash memory for storing and executing real-time programs in multi-tasking environments with minimal usage of RAM. However, there still is a challenging issue to apply mRT-PLRU to real embedded systems such as PMP (Portable Media Player) and 3G cell phone. While mRT-PLRU is configured with sample input data, it may not work if the real input data has a large difference from the sam-ple input data. This paper addresses this issue to apply mRT-PLRU focusing on real-time tasks of mobile systems handling video contents as inputs.

Citations (4)


... Kim et al. adopt flash memory as a code storage and present a new page replacement algorithm in portable media players [21]. Lee et al. present MRT-PLRU (multitasking real-time constrained combination of pinning and LRU) that combines pinning and LRU (least recently used) policies to reduce the memory size of real-time systems [22]. However, these studies probabilistically guarantee the real-time task's deadlines without fully satisfying the constraints of hard real-time systems. ...

Reference:

Supporting Swap in Real-Time Task Scheduling for Unified Power-Saving in CPU and Memory
MRT-PLRU: A general framework for real-time multitask executions on NAND flash memory
  • Citing Article
  • April 2013

... However, due to unpredictable page-faults, this approach does not provide any real-time guarantee of program executions. Addressing these limitations, our previous works [13, 16] present techniques for executing program codes in NAND flash memory satisfying their real-time requirements with smallest possible RAM. However, they are developed focusing only on soft real-time applications. ...

A Generic Framework for Soft Real-Time Program Executions on NAND Flash Memory in Multi-Tasking Embedded Systems
  • Citing Conference Paper
  • December 2009

... However, due to unpredictable page-faults, this approach does not provide any real-time guarantee of program executions. Addressing these limitations, our previous works [13, 16] present techniques for executing program codes in NAND flash memory satisfying their real-time requirements with smallest possible RAM. However, they are developed focusing only on soft real-time applications. ...

Real-Time Program Execution on NAND Flash Memory for Portable Media Players
  • Citing Conference Paper
  • November 2008

... Previous studies on paging systems have suggested some replacement algorithms for soft real-time tasks. Kim et al. adopt flash memory as a code storage and present a new page replacement algorithm in portable media players [21]. Lee et al. present MRT-PLRU (multitasking real-time constrained combination of pinning and LRU) that combines pinning and LRU (least recently used) policies to reduce the memory size of real-time systems [22]. ...

RT-PLRU: A new paging scheme for real - Time execution of program codes on NAND flash memory for portable media players
  • Citing Article
  • August 2011