KR20080070953A - 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 - Google Patents
컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 Download PDFInfo
- Publication number
- KR20080070953A KR20080070953A KR1020070008903A KR20070008903A KR20080070953A KR 20080070953 A KR20080070953 A KR 20080070953A KR 1020070008903 A KR1020070008903 A KR 1020070008903A KR 20070008903 A KR20070008903 A KR 20070008903A KR 20080070953 A KR20080070953 A KR 20080070953A
- Authority
- KR
- South Korea
- Prior art keywords
- page
- preload
- information
- pages
- stored
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
- G06F8/4442—Reducing the number of cache misses; Data prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
Abstract
Description
Claims (14)
- 적어도 하나의 페이지로 구성되는 제1프로그램 코드의 각 페이지별 프리로드 페이지 정보를 추출하고, 상기 프로그램 코드 및 추출된 상기 프리로드 페이지에 대한 정보를 포함하는 제2프로그램 코드를 생성하는 단계;생성된 제2프로그램 코드를 비휘발성 메모리에 저장하는 단계; 및상기 비휘발성 메모리에 저장된 상기 제2프로그램 코드의 페이지 중 어느 하나의 페이지를 메인메모리에 로드할 때, 상기 어느 하나의 페이지에 저장된 상기 프리로드 페이지에 대한 정보에 기초하여 상기 메모리에 저장된 페이지 중 적어도 하나의 페이지를 상기 메인메모리에 프리로드 하는 단계를 구비하는 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 1항에 있어서, 제2프로그램 코드를 생성하는 단계는,프리로드 페이지 추출기가 상기 제1프로그램 코드를 페이지 단위로 분리하고, 분리된 각 페이지에 포함된 브랜치를 검색하는 단계;테스트 프로그램으로부터 출력된 프로파일링 정보에 기초하여 검색된 브랜치의 타켓 페이지 중 적중률이 높은 페이지를 상기 브랜치를 포함하는 페이지의 프리로드 페이지로 선정하는 단계; 및선정된 상기 프리로드 페이지에 대한 정보를 상기 브랜치를 포함하는 페이지의 소정의 영역에 저장하는 단계를 구비하는 컨트롤 플로우를 이용한 페이지 프리 로드 방법.
- 제 2항에 있어서, 상기 비휘발성 메모리는,낸드형 플래시 메모리인 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 3항에 있어서, 상기 소정의 영역은,상기 브랜치를 포함하는 페이지의 스페어 영역인 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 4항에 있어서, 상기 프리로드 페이지에 대한 정보는,상기 프리로드 페이지의 어드레스인 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 1항에 있어서, 상기 어느 하나의 페이지에 저장된 상기 프리로드 페이지에 대한 정보에 기초하여 상기 메모리에 저장된 페이지 중 적어도 하나의 페이지를 상기 메인 메모리에 프리로드 하는 단계는,DPM(demand paging module)이 상기 프리로드 페이지에 대한 정보에 기초하여 미리 결정된 프리로드 페이지 수 만큼 프리로드 할 페이지를 탐색하는 단계; 및탐색된 페이지를 상기 메인 메모리에 프리로드 하는 단계를 구비하는 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 6항에 있어서, 상기 프리로드 할 페이지를 탐색하는 단계는,상기 프리로드 페이지 수 만큼 상기 프리로드 페이지에 대한 정보에 상응하는 페이지에 저장된 프리로드 페이지에 대한 정보를 검색하는 단계를 구비하는 컨트롤 플로우를 이용한 페이지 프리로드 방법.
- 제 1항 내지 제 7항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 기록매체.
- 제1프로그램 코드를 페이지 단위로 분리하고, 분리된 각 페이지에 포함된 브랜치를 검색하는 브랜치 매니저; 및테스트 프로그램으로부터 출력된 프로파일링 정보에 기초하여 상기 브랜치 매니저가 검색한 브랜치의 타켓 페이지 중 적중률이 높은 페이지를 상기 브랜치를 포함하는 페이지의 프리로드 페이지로 선정하는 프리로드 정보 추출기를 구비하는 프리로드 페이지 추출장치.
- 제 9항에 있어서, 상기 프리로드 페이지 추출장치는,상기 프리로드 정보 추출기가 선정한 상기 프리로드 페이지에 대한 정보를 상기 분리된 각 페이지의 소정의 영역에 포함하는 제2프로그램 코드를 생성하는 이미지 생성기를 더 구비하는 프리로드 페이지 추출장치.
- 메인 메모리;적어도 하나의 페이지로 구성되는 제1프로그램 코드 및 상기 제1프로그램 코드의 각 페이지별 프리로드 페이지 정보를 포함하는 제2프로그램 코드가 저장된 비휘발성 메모리; 및상기 비휘발성 메모리에 저장된 상기 제2프로그램 코드 중 적어도 하나의 페이지를 상기 메인 메모리에 로드하기 위한 DPM을 구비하며,상기 DPM은 상기 비휘발성 메모리에 저장된 상기 제2프로그램 코드의 페이지 중 어느 하나의 페이지를 상기 메인 메모리에 로드할 때, 상기 어느 하나의 페이지에 저장된 상기 프리로드 페이지에 대한 정보에 기초하여 상기 비휘발성 메모리에 저장된 페이지 중 적어도 하나의 페이지를 상기 메인메모리에 프리로드 하는 시스템.
- 제 11항에 있어서, 상기 DPM은,상기 프리로드 페이지에 대한 정보에 기초하여 미리 결정된 프리로드 페이지 수 만큼 프리로드 할 페이지를 탐색하고, 탐색된 페이지를 상기 메인 메모리에 프리로드 하는 시스템.
- 제 12항에 있어서, 상기 DPM은,상기 소정의 프리로드 페이지 수 만큼 상기 프리로드 페이지에 대한 정보에 상응하는 페이지에 저장된 프리로드 페이지에 대한 정보를 검색하는 시스템.
- 제 11항에 있어서, 상기 시스템은,휴대용 단말기를 포함하는 시스템.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070008903A KR100866627B1 (ko) | 2007-01-29 | 2007-01-29 | 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 |
US11/833,003 US8732413B2 (en) | 2007-01-29 | 2007-08-02 | Method and system for preloading page using control flow |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070008903A KR100866627B1 (ko) | 2007-01-29 | 2007-01-29 | 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080070953A true KR20080070953A (ko) | 2008-08-01 |
KR100866627B1 KR100866627B1 (ko) | 2008-11-03 |
Family
ID=39669286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070008903A KR100866627B1 (ko) | 2007-01-29 | 2007-01-29 | 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8732413B2 (ko) |
KR (1) | KR100866627B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455353A (zh) * | 2013-08-30 | 2013-12-18 | 广州市动景计算机科技有限公司 | 网页数据的请求方法及装置 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2456019A (en) * | 2007-12-31 | 2009-07-01 | Symbian Software Ltd | Loading dynamic link libraries in response to an event |
US20100030994A1 (en) * | 2008-08-01 | 2010-02-04 | Guzman Luis F | Methods, systems, and computer readable media for memory allocation and deallocation |
US8935589B2 (en) * | 2009-06-02 | 2015-01-13 | Silicon Motion, Inc. | Controller and data access method for flash memories |
TWI415130B (zh) * | 2009-06-02 | 2013-11-11 | Silicon Motion Inc | 快閃記憶體之控制器以及於快閃記憶體存取資料的方法 |
US9164676B2 (en) * | 2011-11-30 | 2015-10-20 | International Business Machines Corporation | Storing multi-stream non-linear access patterns in a flash based file-system |
KR101955978B1 (ko) * | 2012-05-23 | 2019-03-08 | 엘지전자 주식회사 | 영상 표시 장치 및 영상 표시 장치의 메모리 관리 방법 |
CN103744862B (zh) * | 2013-12-06 | 2017-02-22 | 长春吉大工易软件有限公司 | 一种基于Sencha Touch的移动办公应用的预加载优化方法 |
CN106055367B (zh) * | 2016-06-01 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 一种脚本文件载入方法及装置 |
CN107145333B (zh) * | 2017-04-21 | 2020-04-14 | 建荣半导体(深圳)有限公司 | 数据操作方法及其装置、应用、单片机及嵌入式系统 |
CN107832100B (zh) * | 2017-10-27 | 2020-12-04 | 平安普惠企业管理有限公司 | 一种apk插件的加载方法及其终端 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2102883A1 (en) * | 1993-02-26 | 1994-08-27 | James W. Arendt | System and method for lazy loading of shared libraries |
JPH07152574A (ja) | 1993-11-26 | 1995-06-16 | Hitachi Ltd | プログラムローディング方式 |
US5659752A (en) * | 1995-06-30 | 1997-08-19 | International Business Machines Corporation | System and method for improving branch prediction in compiled program code |
US5764994A (en) * | 1996-09-16 | 1998-06-09 | International Business Machines Corporation | Method and system for compressing compiled microcode to be executed within a data processing system |
US6226667B1 (en) * | 1998-05-26 | 2001-05-01 | International Business Machines Corporation | Method and apparatus for preloading data in a distributed data processing system |
US6718543B2 (en) * | 1999-11-08 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Method and apparatus for optimization of the performance of an application program in a computer system while preserving the system behavior |
US6684305B1 (en) | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
US20030236825A1 (en) | 2002-06-20 | 2003-12-25 | Kulkarni Suhas Sudhakar | System, method and computer readable medium for transferring and rendering a web page |
US6910106B2 (en) | 2002-10-04 | 2005-06-21 | Microsoft Corporation | Methods and mechanisms for proactive memory management |
WO2004072872A1 (en) * | 2003-02-12 | 2004-08-26 | Research In Motion Limited | An apparatus and methods for managing data used by a mobile device |
US7502901B2 (en) * | 2003-03-26 | 2009-03-10 | Panasonic Corporation | Memory replacement mechanism in semiconductor device |
US7290255B2 (en) * | 2004-01-14 | 2007-10-30 | International Business Machines Corporation | Autonomic method and apparatus for local program code reorganization using branch count per instruction hardware |
US20050243640A1 (en) * | 2004-04-30 | 2005-11-03 | Rudelic John C | Storing code in fragments |
JP2006048422A (ja) | 2004-08-05 | 2006-02-16 | Matsushita Electric Ind Co Ltd | ローディング装置、ローディング方法、ローディングプログラム及びローディングプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US20060075394A1 (en) * | 2004-10-01 | 2006-04-06 | Tatsuya Iwamoto | Dynamic loading and unloading for processing unit |
KR100755701B1 (ko) * | 2005-12-27 | 2007-09-05 | 삼성전자주식회사 | 내장형 시스템을 위한 요구 페이징 장치 및 방법 |
KR100772863B1 (ko) * | 2006-01-13 | 2007-11-02 | 삼성전자주식회사 | 요구 페이징 기법을 적용한 시스템에서 페이지 교체 수행시간을 단축시키는 방법 및 장치 |
US20070260862A1 (en) * | 2006-05-03 | 2007-11-08 | Mcfarling Scott | Providing storage in a memory hierarchy for prediction information |
-
2007
- 2007-01-29 KR KR1020070008903A patent/KR100866627B1/ko active IP Right Grant
- 2007-08-02 US US11/833,003 patent/US8732413B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455353A (zh) * | 2013-08-30 | 2013-12-18 | 广州市动景计算机科技有限公司 | 网页数据的请求方法及装置 |
CN103455353B (zh) * | 2013-08-30 | 2017-11-14 | 广州市动景计算机科技有限公司 | 网页数据的请求方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US8732413B2 (en) | 2014-05-20 |
KR100866627B1 (ko) | 2008-11-03 |
US20080184006A1 (en) | 2008-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100866627B1 (ko) | 컨트롤 플로우를 이용한 페이지 프리로드 방법 및 그시스템 | |
US9530499B2 (en) | Semiconductor memory device and information processing device | |
US7302517B2 (en) | Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same | |
CN101421701B (zh) | 用于引导非易失性存储器的方法、设备和系统 | |
US8205070B2 (en) | Device bootup from a NAND-type non-volatile memory | |
US7953953B2 (en) | Method and apparatus for reducing page replacement time in system using demand paging technique | |
CN102713826A (zh) | 经由位图的树表示分配文件存储的方法和设备 | |
CN104346294A (zh) | 基于多级缓存的数据读/写方法、装置和计算机系统 | |
US10168926B2 (en) | Method of operating data storage device and method of operating data processing system including same | |
US20130268717A1 (en) | Emulated electrically erasable memory having sector management | |
US7822940B2 (en) | Apparatus and method for managing mapping information of nonvolatile memory | |
CN113253912B (zh) | 存储器系统及其操作方法 | |
US20210255956A1 (en) | Microprocessor-based system memory manager hardware accelerator | |
CN101246429A (zh) | 将闪存模块用作主存储器的电子系统和相关系统引导方法 | |
KR101123335B1 (ko) | 해시 인덱스 구성 방법과 그 장치, 및 상기 장치를 구비하는 데이터 저장 장치, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 | |
US9158545B2 (en) | Looking ahead bytecode stream to generate and update prediction information in branch target buffer for branching from the end of preceding bytecode handler to the beginning of current bytecode handler | |
US8068363B2 (en) | Flash memory apparatus and read operation control method therefor | |
US9069480B2 (en) | Method of creating target storage layout table referenced for partitioning storage space of storage device and related electronic device and machine-readable medium | |
US10019199B2 (en) | Controller coupled to semiconductor memory device and operating method thereof | |
CN112965661A (zh) | 数据存储方法、装置、设备及存储介质 | |
CN112328630B (zh) | 数据查询方法、装置、设备及存储介质 | |
US11416163B2 (en) | Systems and methods for dynamic logical block address distribution between multicores | |
CN114138176A (zh) | Nor Flash的擦除、升级方法及装置、计算机设备和存储介质 | |
CN104298471A (zh) | 一种高速缓存的数据写入方法及装置 | |
US20200257630A1 (en) | Information processing apparatus, information processing method, and computer readable medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120925 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20130930 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20141001 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20151001 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160930 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20180927 Year of fee payment: 11 |