EVector: An Efficient Vector Implementation – Using Virtual Memory for Improving Memory
Author(s) -
Dries Kimpe,
Stefan Vandewalle,
Stefaan Poedts
Publication year - 2006
Publication title -
scientific programming
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.269
H-Index - 36
eISSN - 1875-919X
pISSN - 1058-9244
DOI - 10.1155/2006/690694
Subject(s) - computer science , virtual memory , memory map , memory protection , memory management , usability , flat memory model , operating system , scheme (mathematics) , class (philosophy) , embedded system , shared memory , computer architecture , artificial intelligence , semiconductor memory , mathematical analysis , mathematics
Every modern operating system provides some form of virtual memory to its applications. Usually, a hardware memory management unit (MMU) exists to efficiently support this. Although most operating systems allow user programs to indirectly control the MMU, few programs or programming languages actually make use of this facility. This article explores how the MMU can be used to enhance memory handling for resizable arrays. A reference implementation in C++ demonstrates its usability and superiority compared to the standard C++ vector class, and how to combine the scheme with an object-oriented environment. A number of other improvements, based on newly emerged insights in C++ are also presented
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom