Serge
Прикладные программеры много чего не любят.
Они вообще любят лепить код парой щелчков мыши, а то, что он будет занимать по 1-2 Мб на каждый щелчок мышки их как-то слабо интересует. В результате пользователь, тихо матерясь, и проклиная все на свете, покупает новый комп, потому что "Наш новый софт на новом железе работает быстрей, чем старый на старом".
Извиняюсь за флуд, но пробило, мочи нету.
Если ты считаешь что:
Если мне надо считать из файла 20 байт по заданному адресу в структуру то мне не надо определять номер блока, считывать весь блок в специальный буфер и потом уже копировать необходимые данные. Все заботы по кешированию и буфированию берёт на себя система. А если использовать CreateFileMapping/MapViewOfFie то с файлом можно работать так, словно он весь уже загружен в память. Удобно, однако
То это можно со временем реализовать, не все сразу, однако. Проблемы мы решаем по мере поступления. Если оно не решалось раньше, значит, никто не ставил такой задачи и очень может быть, просто не было людей, который могли четко сформулировать конкретные вопросы. Ведь очень часто только и слышно "У вас нету, того и этого" при этом люди сыплют терминами мало распространенными и специфичными, даже не пытаясь объяснить суть. На вопросы что это такое обычно молчание с намеком, "Какие все тут ламеры", впрочем, речь не идет о постоянных посетителях форума.
rabid rabbit
А одновременный доступ к файлам тоже на уровне приложения делать? Вообще я тихо офигеваю от того, что приложение должно выделять буфер для работы файловой функции ОС.
Я конечно отмазываюсь, но:
1) Это разработано еще Великом - большим специалистом по написанию ОС (он уже 4-ю ОС пишет, насколько я понимаю).
2) Что офигительного в выделении буфера в области приложения? Приложение что жаба задушит?
Ядро все равно с одинаково скоростью организует доступ, что к памяти, отведенной под себя, что к памяти отведенной к приложению.
Конкретно выделив место под буфер, нет нужды занимать стек, то есть, он лишний раз не распухнет, и не дойдет критического значения, то есть не пересечет выделенную для него область.
Теперь приведи свои доводы против такой реализации (не считая эмоций) и того, что так не привычно, я с удовольствием выслушаю и возможно мы изменим ситуацию.