On Sun, 28 Jan 2018 10:16:51 -0600 Eric Chevalier <[email protected]>
wrote:

:>On 1/28/18 12:35 AM, Paul Raulerson wrote:
:>> This is a funny area to compare though, since on most platforms, C 
:>> file access is always a binary stream. The application pretty much 
:>> defines the way the file is treated - byte by byte, record by record, 
:>> block by block, buffer size by buffer size, etc. To load an image for 
:>> instance, it is pretty common to fstat() the image file to get its 
:>> size, malloc() a buffer of the appropriate size, then do a single 
:>> read() or fread() to populate the buffer. It is extremely efficient on 
:>> most platforms, often due to the OS buffering.
:>Going even further, many platforms allow a file to be mapped into an 
:>application's address space. I work with an unmanaged C++ Windows 
:>application that does CreateFile() to open a file, GetFileSize() to get 
:>the size of the file and then CreateFileMapping() to map the file into 
:>the app's address space. At that point, the app doesn't need any I/O 
:>functions to process the file, it just accesses the contents as memory 
:>and lets the paging system handle the I/O. (And I think we like to 
:>believe that most operating systems go to great lengths to optimize 
:>paging logic.) *nix platforms have mmap() to provide similar functionality.

You are referring to a LDS.

--
Binyamin Dissen <[email protected]>
http://www.dissensoftware.com

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.

Reply via email to