• Title/Summary/Keyword: 메모리 할당

Search Result 260, Processing Time 0.028 seconds

Implementation of NAND Flash File System Simulator (NAND 플래시 파일 시스템 시뮬레이터 구현)

  • Ok, Dong-Seok;Lee, Seung-Hwan;Lee, Tae-Hoon;Chung, Ki-Dong
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2008.06b
    • /
    • pp.323-326
    • /
    • 2008
  • 최근 플래시 메모리는 임베디드 시스템과 휴대용 기기 등에서 많이 사용되고 있다. 그 중 NAND 플래시 메모리는 대용량화가 가능해 NOR 플래시 메모리보다 더 많이 사용되고 있다. NAND 플래시 파일 시스템을 개발하기에 앞서 파일 시스템의 할당과 가비지 컬렉션 정책을 시험하기 위해서, 또는 실제 플래시 메모리에서 수행하기 힘든 지움 횟수 측정 실험을 하기 위해서 플래시 파일 시스템 시뮬레이터를 구현하여 실험을 한다. 하지만 이 시뮬레이터는 제한된 성능 비교를 할 수 밖에 없는 약점을 지니고 있다. 이 때문에 어느 한 성능 개선을 위해 제안한 기법으로 인해서 다른 성능이 저하될 수 있지만 이를 간과할 수도 있다. 본 논문에서는 NAND 플래시 파일 시스템의 전체적인 성능 평가를 수행할 수 있는 시뮬레이터를 설계하고 구현한다.

  • PDF

Implementation of Memory Management for Real-Time Operating Systems (실시간 운영체제에서 메모리 관리 구현)

  • Ahn, Hee-Joong;Park, Yun-Mi;Seong, Yeong-Rak;Lee, Cheol-Hoon
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2003.05a
    • /
    • pp.483-486
    • /
    • 2003
  • 실시간 운영체제는 효율성 및 공평성을 중시하는 다른 범용 운영체제와는 달리 논리적 정확성과 시간적 정확성을 보장하기 위해 스케줄링하는 운영체제를 의미한다. 임베디드 시스템에서 동작하는 실시간 운영체제는 제한된 환경에서 제한된 목적으로 사용되고 있다. 특히 메모리는 실시간 운영체제의 실행에 있어서 꼭 필요한 자원이므로 이에 대한 효과적인 관리가 필수적이라 할 수 있다. 본 논문은 동적 메모리 할당을 위한 힙 스토리지 매니저와 메모리 풀을 설계하고 구현한 내용을 기술한다.

  • PDF

Effectively Using Memory throughout Adjustment for Slab Chunk Size of Memcached (memcached의 slab chunk 크기 조정을 통한 효율적인 메모리 사용)

  • Son, Ju-Hyoung;Lee, MinJae;Kim, Tae Il;Kang, SooYong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.11a
    • /
    • pp.1399-1401
    • /
    • 2012
  • memcached는 기존 RDBMS의 한계를 극복하기 위해 나온 소프트웨어 중 하나이다. memcached는 여러 장점들이 있어 많은 곳에서 활용되지만 주의할 점이 있어 사용 시 몇 가지 요소들을 적절히 설정하여 사용해야 한다. memcached는 기존메모리 할당방식 대신 slab allocater를 통해 메모리를 관리하여 입력되는 데이터의 크기에 맞춰 slab class의 chunk에 저장된다. 입력되는 데이터의 크기에 따라 저장된다는 memcached의 특성 때문에 slab chunk 크기를 조정하는 요소를 상황에 맞게 정해준다면 보다 효율적인 메모리 사용을 할 수 있다는 것을 실험을 통해 검증해보았고, 이 실험을 통해 나온 결과는 memcached를 사용하는 많은 분야에서 응용될 수 있을 것이다.

Analysis and Forecast for Object-C garbage collection memory management policies. (Object C의 가비지 컬렉션을 통한 메모리 관리 정책 분석 및 전망)

  • Kwon, Yejin;Park, Youngbom
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.05a
    • /
    • pp.994-997
    • /
    • 2013
  • 가비지 컬렉션(Garbage Collection)은 시스템에서 더 이상 사용하지 않는 동적 할당된 메모리 블록 혹은 개체를 찾아 자동적으로 다시 사용 가능한 자원으로 회수하는 것을 의미한다. 최근 대부분의 프로그래밍 언어에서는 메모리 관리를 자동으로 처리해주는 가비지 컬렉터를 기본적으로 포함하고 있으며 이러한 시스템 환경은 개발자들의 개발 속도 향상과 프로그램 가독성을 높여주는 이점을 주고 있다. 그러나 가비지 컬렉터는 자원이 한정되어 있는 스마트폰과 같은 환경에서는 큰 오버헤드를 가지며 성능 저하의 주 원인으로 꼽히기도 한다. 따라서 iOS의 경우에는 가비지 컬렉터를 지원하지 않는다. 이에 따라 본 연구에서는 스마트폰의 안드로이드와 iOS의 프로그래밍 언어인 Java와 Object C의 가비지 컬렉터의 알고리즘을 분석하여 두 언어의 개발환경의 차이를 비교 하였다. 또한 앞으로 Object C의 메모리 관리 정책에 대하여 서술하였다.

An automated memory error detection technique using source code analysis in C programs (C언어 기반 프로그램의 소스코드 분석을 이용한 메모리 접근오류 자동검출 기법)

  • Cho, Dae-Wan;Oh, Seung-Uk;Kim, Hyeon-Soo
    • The KIPS Transactions:PartD
    • /
    • v.14D no.6
    • /
    • pp.675-688
    • /
    • 2007
  • Memory access errors are frequently occurred in C programs. A number of tools and research works have been trying to detect the errors automatically. However, they have one or more of the following problems: inability to detect all memory errors, changing the memory allocation mechanism, incompatibility with libraries, and excessive performance overhead. In this paper, we suggest a new method to solve these problems, and then present a result of comparison to the previous research works through the experiments. Our approach consists of two phases. First is to transform source code at compile time through inserting instrumentation into the source code. And second is to detect memory errors at run time with a bitmap that maintains information about memory allocation. Our approach has improved the error detection abilities against the binary code analysis based ones by using the source code analysis technique, and enhanced performance in terms of both space and time, too. In addition, our approach has no problem with respect to compatibility with shared libraries as well as does not need to modify memory allocation mechanism.

Fuzzy-based Processor Allocation Strategy for Multiprogrammed Shared-Memory Multiprocessors (다중프로그래밍 공유메모리 다중프로세서 시스템을 위한 퍼지 기반 프로세서 할당 기법)

  • 김진일;이상구
    • Journal of the Korean Institute of Intelligent Systems
    • /
    • v.10 no.5
    • /
    • pp.409-416
    • /
    • 2000
  • In the shared-memory mutiprocessor systems, shared processing techniques such as time-sharing, space¬sharing, and gang-scheduling are used to improve the overall system utilization for the parallel operations. Recently, LLPC(Loop-Level Process Control) allocation technique was proposed. It dynamically adjusts the needed number of processors for the execution of the parallel code portions based on the current system load in the given job. This method allocates as many available processors as possible, and does not save any processors for the parallel sections of other later-arriving applications. To solve this problem, in this paper, we propose a new processor allocation technique called FPA(Fuzzy Processor Allocation) that dynamically adjusts the number of processors by fuzzifYing the amounts ofueeded number of processors, loads, and estimated execution times of job. The proposed method provides the maximum possibility of the parallism of each job without system overload. We compare the performances of our approaches with the conventional results. The experiments show that the proposed method provides a better performance.

  • PDF

Block-based Adaptive Bit Allocation for Reference Memory Reduction (효율적인 참조 메모리 사용을 위한 블록기반 적응적 비트할당 알고리즘)

  • Park, Sea-Nae;Nam, Jung-Hak;Sim, Dong-Gy;Joo, Young-Hun;Kim, Yong-Serk;Kim, Hyun-Mun
    • Journal of the Institute of Electronics Engineers of Korea SP
    • /
    • v.46 no.3
    • /
    • pp.68-74
    • /
    • 2009
  • In this paper, we propose an effective memory reduction algorithm to reduce the amount of reference frame buffer and memory bandwidth in video encoder and decoder. In general video codecs, decoded previous frames should be stored and referred to reduce temporal redundancy. Recently, reference frames are recompressed for memory efficiency and bandwidth reduction between a main processor and external memory. However, these algorithms could hurt coding efficiency. Several algorithms have been proposed to reduce the amount of reference memory with minimum quality degradation. They still suffer from quality degradation with fixed-bit allocation. In this paper, we propose an adaptive block-based min-max quantization that considers local characteristics of image. In the proposed algorithm, basic process unit is $8{\times}8$ for memory alignment and apply an adaptive quantization to each $4{\times}4$ block for minimizing quality degradation. We found that the proposed algorithm can obtain around 1.7% BD-bitrate gain and 0.03dB BD-PSNR gain, compared with the conventional fixed-bit min-max algorithm with 37.5% memory saving.

A Novel Bit Allocation Method Using Two-phase Optimization Technique (2단계 최적화 방법을 이용한 비트할당 기법)

  • 김욱중;김성대
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.23 no.8
    • /
    • pp.2032-2041
    • /
    • 1998
  • In this work, we propose a novel bit allocation method that is to minimize overall distortions subject ot the bit rate constraint. We partition the original bitallocation problem into 'macroblock level bit allocation' problems that can be solved by conventional Lagrangian mutiplier methods and a 'frame level bit allocation' problem. To tackle the frame level problem, 'two-phase optimization' algorithm is used with iter-frame dependency model. While the existing approaches are almost impossible to find the macroblock-unit result for the moving picture coding system due to high computational complexity, the proposed algorithm can drastically reduce the computational loads by the problem partitioning and can obtain the result close to the optimal solution. Because the optimally allocated results can be used as a benchmark for bit allocation methods, the upper performance limit, or a basis for approximation method development, we expect that the proposed algorithm can be very useful for the bit allocation related works.

  • PDF

Power Aware Suffer Cache (저전력 버퍼 캐시)

  • Lee, Min;Seo, Eui-Seong;Lee, Joon-Won
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2005.07a
    • /
    • pp.766-768
    • /
    • 2005
  • 컴퓨팅 환경이 무선과 휴대용 시스템으로 변화하면서, 전력효율이 점점 중요해지고 있다. 특히 내장형 시스템일 경우에 더욱 그러한데 이중 메모리에서 소모되는 전력이 전체 전력소모의 두 번째 큰 요소가 되고 있다. 메모리 시스템에서의 전력소모를 줄이기 위해서 DRAM의 저전력 모드인 냅모드(nap mode)를 활용할 수 있다. 냅모드는 액티브 모드(active mode)일 때의 $28\%$의 전력만을 소모한다. 하지만 하드웨어 컨트롤러는 운영체제가 협조하지 않으면 이 기능을 효율적으로 활용하지 못한다. 이 논문에서는 DRAM의 액티브 유닛(active unit)의 수를 최소화하는 방법에 초점을 맞춘다. 운영체제는 참조되지 않는 메모리를 냅모드에 놓음으로써 최소한의 유닛들만을 액티브 모드에 놓아 프로그램이 수행될 수 있도록 피지컬(physical) 페이지들을 할당한다. 이것은 PAVM(Power Aware Virtual Memory) 연구의 일반화된 시스템 전반에 대한 연구라고 할 수 있다. 우리는 모든 피지컬 메모리를 고려하고 있으며, 특히 평균적으로 전체 메모리의 절반을 사용하는 버퍼 캐시를 고려하고 있다. 버퍼 캐시의 용량과 그 중요성 때문에 PAVM 방식은 버퍼 캐시를 고려하지 않고는 완전한 해법이 되지 못한다. 이 논문에서 우리는 메모리의 사용처를 분석하고 저전력 페이지 할당 정책을 제안한다. 특히 프로세스의 주소공간에 매핑(mapping)된 페이지들과 버퍼 캐시가 고려된다. 이 두 종류의 페이지들간의 상호작용과 그 관계를 분석하고 저전력을 위해 이러한 관계를 이용한다.

  • PDF

An Analysis on The Optimal Partitioning Configuration of Cache for Meeting Deadlines of Real-Time Tasks (실시간 태스크의 마감시간 만족을 위한 캐쉬 최적 분할 형태의 분석)

  • Kim, Myung-Hee;Joo, Su-Chong
    • The Transactions of the Korea Information Processing Society
    • /
    • v.4 no.11
    • /
    • pp.2891-2902
    • /
    • 1997
  • This paper presents an analysis on the optimal partitioning configuration of cache (memory) for meeting deadlines of periodic and aperiodic real-time task set. Our goal is not only to decrease the deadline missing ratio of each task by minimizing the task utilization, but also to allocate another tasks to idle spaces of cache. For this reason, we suggest an algorithm so that tasks could be allocated to cache segments. Here, the set of cache segments allocated tasks is called a cache partitioning configuration. Based on how tasks allocate to cache segments, we can get various cache partitioning configurations. From these configurations, we obtain the boundary of task utilization that tasks are possible to schedule, and analyze the cache optimal partitioning configuration that can be executed to minimize the task utilization.

  • PDF