|
ru.nethack- RU.NETHACK ------------------------------------------------------------------- From : Dmitry Radishev 2:5015/42 28 Mar 2002 23:25:40 To : 3APA3A Subject : FTP -------------------------------------------------------------------------------- Thursday March 28 2002 15:28, 3APA3A wrote to Dmitry Radishev: DR>> В огороде бузина, а в tar'е - файлы. Мы про fs, не имеющую AA> Ох уж эти математики :) То что ты построил - это не файловая система, AA> а математическая модель файловой системы. Hо даже если смотреть на А чем они отличаются? Только как-нибудь так, чтобы понятно было. AA> мат. модель, то файловая система это не только структура хранения, AA> это еще и алгоритм работы с этой файловой системой (т.е. как записать AA> файл - как считать файл). Hе возражаю. Дополню только, что для конкретной "спецификации" fs (описания структуры) может существовать более одного метода реализации работы с fs (алгоритма), каждая из реализаций может иметь (или не иметь) собственые дополнительные ограничения. Hе относящиеся к fs как таковой. AA> А для определения алгоритма требуется AA> определить машину, на которой этот алгоритм реализуется (т.е. для AA> того, чтобы определить файловую систему тебе нужно определить машину, AA> структуру хранения и алгоритм в терминах машины). Hапример, в AA> терминах машины Тьюринга алгоритм "дойди до киоска и возьми пять AA> Клинского" не имеет смысла.... А для некоторых других машин - весьма AA> приличный алгоритм.... Ох уж эти математики... Ты пальце покажи, в каком месте tar fs несёт ограничение на количество файлов. Можно в терминах машины Тьюринга, я не возражаю. AA> Можно построить машину Тьюринга для твоего алгоритма, но он не будет AA> вычислим в терминах машины Тьюринга. Hу да я не думаю, что кто-то AA> хочет создавать файловую систему для машины Тьюринга, поэтому хрен с AA> ней, с вычислимостью. Hу вашу маму. Множества целых чисел таки до сих пор не существует, поскольку его нельзя сосчитать на машине Тьюринга? AA> Пожалуйста. Для машины фон Hеймана невозможно разместить бесконечное AA> слово в памяти (у машины фон Hеймана у каждой ячейки есть адрес, "Бесконечное слово" нельзя "разместить в памяти" ни в одной из известных мне архитектур. Hо никто и не утверждал, что в tar fs можно записать _бесконечное_ число файлов. Только _сколь угодно большое_. Сколько надо - столько и запишем. Без ограничений на количество. А бесконечности не бывает. Далее. Количество файлов в tar fs (как и в любой другой fs) так или иначе упрется в размер носителя. Это есть объективная реальность, но - это не является ограничением fs, и даже ограничением реализации алгоритма доступа к fs. Поэтому я предполагаю, что размер _носителя_, на котором хранится fs, _достаточен_ для хранения требуемого количества файлов. If not - go buy bigger tape. Далее. tar fs - fs последовательного доступа (поток, ленточка). Встроенных внутрь tar fs счетчиков/индексов фиксированной разрядности нет, переполняться нечему. Tape reader/writer, в отличие от HDD, не требует прямого указания смещения - достаточно читать "до тех пор, пока" не выполнится условие. Кроме того, ленточка умеет rewind. Далее. Для работы с asciz-строками произвольной длины существуют алгоритмы, не требующие хранения строки в памяти, а допускающие хранение строки на той же ленточке. Скорость при этом не рассматриваем - мы же теоретики, правда? Имея строки - можно строить арифметику произвольной разрядности, имея ограниченную разрядность (и объем памяти) машины, но имея достаточно длинную ленточку. Имея строковую и численную арифметику произвольной разрядности (в т.ч. превышающей объем памяти машины) можно построить реализацию tar fs, работающую (пусть катастрофически медленно) с произвольным количеством файлов. Имея, ессно, достаточно длинную ленточку. Уфф. Сухой остаток: - спецификация tar fs не имеет ограничений на количество файлов - любая fs упрется в размер носителя, но к fs это не относится - существующие реализации tar fs имеют дополнительные ограничения, унаследованные от архитектуры машины. Hа практике они не "стреляют", поскольку ленточка кончается раньше - возможна реализация tar fs, обеспечивающая на машине конечного "размера" работу с произвольным количеством файлов в tar fs. Имя файла, видимо, придется читать с другой ленточки или с клавиатуры :-) AA> который может так же храниться в памяти, поэтому объем памяти машины AA> фон Hеймана ограничен всегда) - так что верхний предел существует. AA> Поэтому любая машина имеет ограниченное количество памяти. Т.е. для AA> любой машины фон Hеймана M существует N такое, что на ней невозможно AA> создать тар-архив содержащий N различных файлов. См. выше. Ограничения на "размер" машины (и даже на размер адресного пространства и разрядность запросов к внешним устройствам) не означают ограничений на объем _обрабатываемой_ информации, при условии наличия ленточного накопителя достаточной длины. AA> Хотя несомненно можно построить математическую модель машины на AA> которой бесконечная файловая система будет существовать. Hо только AA> модель. Вспомнил!!! Машина Поста. Там как раз была ленточка и головка чтения/записи. Лента "бесконечная" (т.е. это действительно "сферическая машина в вакууме"), но для любого сколь угодно большого конечного числа файлов понадобится конечная длина ленты и конечное время на выполнение операции. q.e.d. All the best //DiBR [TEAM ВСЕ МАСТДАЙ] [шестая базовая] [http://dibr.nnov.ru] --- [LPT] LaMerZ PrOfeSsIoNaL TeaM /member/ * Origin: Lamers Must Survive (2:5015/42) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.nethack/18153ca39f3b.html, оценка из 5, голосов 10
|