|
|
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
С одной стороны, бинанрные файлы, открытые для чтения-записи - буфферизуются ... С другой стороны, большие массивы - если они занимаю слишком много оперативной памяти - выгружаются в файл подкачки ... Можно ли на этом основании счиать, что "эффективность" работы с большими массивами и с бинанрными файлами (открытыми в режиме Random Read-Write) примерно одинакова? _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2005, 16:52:09 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
- а разве 'открытый файл' = 'файл, загруженный в оперативную память'? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2005, 17:41:34 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Нет, конечно. Но тезис-то состоит в том, что БОЛЬШОЙ массив ТОЖЕ не является "загруженным в оперативную память"! _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 09:38:47 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
И, кстати, не могли бы Вы объяснить, что означает термин "буферизация" (применительно к работе с файлами)? _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 09:40:47 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
В моём понимании - буферизация - это когда в целях сокращения времени на чтение данных файла - считывается не одна 'запись' а целый 'блок'. При этом предполагается, что в работе потребуется множество записей из этого 'блока' и таким образом будет получен выигрыш за счёт меньшего числа обращений к диску. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 09:49:58 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Как Вы считаете, - если файл не слишком велик ... он, наверное, целиком сразу при открытии загружается в "буфер"? Наверное, операционная система МОЖЕТ так поступать ... ибо это было бы ЭФФЕКТИВНО! ТОчно также, операционная система не спрашивает ведь - что ей выгружать в "файл подкачки", а что - держать постоянно в оперативной памяти! _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 10:27:47 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Иван FXSон, наверное, целиком сразу при открытии что значит при открытии? при открытии, обычно, получают дескриптор файла и более ничего ни куда не загружается. А при чтении файла - зависит от диска и ОС. Наверняка оптимизация присутствует. - кластер, вероятно, читается целиком. - используется буфер самого диска - различные API функции по разному читают файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 10:50:46 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Я хочу получить экспертную рекомендацию по такому вопросу: целесообразно ли писать Код: plaintext _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 11:08:06 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Трудно назвать мою рекомендацию 'экспертной' но: - лучше всего читать файл небольшими блоками, загружая их по необходимости. Ведь считав файл такого размера в массив - можно фактически переписать его в файл подкачки, откуда он будет считываться. Так зачем 'менять шило на мыло' - лучше сразу взять процесс в свои руки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 11:43:50 |
|
||
|
Q: большие массивы <-> бинарные файлы
|
|||
|---|---|---|---|
|
#18+
Не-не, я спрашиваю о том, чтобы ВООБЩЕ НЕ ЗАГРУЖАТЬ данные из файла в массив - ни "небольшими блоками", ни целиком, - а брать их оттуда (и возвращать обратно) по мере необходимости ПО ОДНОМУ (Random доступ)! Может ли такая работа оказаться более эффективной, чем ... маета с масивами? _________________________________ НП, Иван FXS . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2005, 11:59:25 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=60&tid=2168040]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 353ms |

| 0 / 0 |
