Pavlus, не совсем. Тут все зависит от того, с какой точки зрения смотреть. Если с точки зрения файловой системы, таких папок не существует (существуют служебные файлы). Если смотреть с точки зрения файлового менеджера аппарата, то это вполне нормальные папки. И не важно, что в файловой системе их не найти, как обычные папки. Если тебе кажется ненормальным, что можно взглянуть на вещи таким образом, то вспомни архивы: ведь мы открываем архиватором и смотрим файлы и папки, хотя с точки зрения файловой системы архив - это просто обычный файл, ничем не отличающийся от остальных. Так что это не иллюзия, просто эти папки существуют на уровне файлового менеджера, а с ним работать из Java нельзя, в отличие от файловой системы.
Malcolm, ну, в файловой системе и папок, как таковых, тоже нету. Это файл индекса в котором хранится структура папок. Если вставить флешку с телефона в компьютер, никогда о телефонах не слышавшем и не знавшем, то он тоже этих папок не увидит. Файловый менеджер телефона показывает не реальную картину фс, а преобразованную. Он все папки, обозначенные как стандартные video, music, camera, etc. называет соответствующими именами (Адреса таких папок и их локализированые имена можно получить с помощью System.getProperty()), и реально папок "Приложения" и "Игры" в индексе файловой системы флешки нету, они взяты из прошивки телефона и адресуются не на списки файлов, а на список приложений установленных в телефоне (с внесением в фс прошивки соответствующих записей). Соответственно, реально таких папок не существует, это лишь пункты в списке и вносятся они в список файлов статично.
Pavlus, так я нигде и не говорю, что эти папки где-то можно найти в файловой системе. Но это не обязательно означает, что их нет вообще, и даже говорить о них как о папках нельзя. Как-то ты мой пост невнимательно прочитал.
Malcolm, меня смутило сравнение с архивами. Архивы тоже можно принимать как сжатую файловую систему. И наоборот. Этих папок нету, вместо них есть елементы списка, которые вызывают стандартную ф-ю телефона, а именно - отображение списка установленных приложений, тоесть их не существует и со стороны фм телефона.
Pavlus, в том-то и дело, что архивы ничего общего с файловой системой не имеют. Создаваемый архив вообще никак не зависит от того, чтобы было в файловой системе. И с точки зрения файловой системы архив - просто еще один файл. Но архиватор воспринимает архив как продолжение файловой системы, хотя на самом деле это просто файл, в котором некоторые служебные записи вперемешку с абракадаброй от алгоритма архивации. И тут все точно так же, физически папок нет в файловой системе, но есть служебные записи об установленных приложениях. И файловый менеджер телефона отображает их в папке на основе этих записей точно так же, как архиватор отображает содержимое архива как папку, хотя это вовсе не папка, а файл.
Pavlus, снять образ операционной системы можно, но архив - это не образ операционной системы. У архива другая задача - просто объеденить отдельные файлы в один с возможным сжатием. При этом в задачу архивации не входит копирование исходной файловой системы, и уж тем более при распаковке содержимого не восстановится исходное состояние. Например, если взять ту же NTFS с ее фишками: символьными ссылками, точками пересечения и так далее - ничего из этого архив, как правило, сохранить не сможет. Но чем меньше архив привязан к какой-то файловой системе, тем лучше, это ведь уменьшает платформонезависимость формата.
Malcolm, да при чём тут операционная система? Образ нтфс можно, написав соответствующую програму открывать как архив. Архив, сам по себе и есть образом фс, часто сжатой. Вот например, возьми образ FAT(*.img), в нём есть заголовок описывающий некоторые данные, пара таблиц доступа и сами даные, его можно открыть как архив и извлечь нужные файлы вместе с доп. информацией(время создания, доступ к файлу, тп.) или возьмём архив tar. который изначально предназначался как лазейка для записи и чтения нескольких файлов с одной кассеты. Мы его открываем как архив, но изначальное его применение - файловая система. Он может выполнять два своих назначения.
Pavlus, опечатался, я имел в виду файловую. Ты не путай снимок файловой системы с архивом. Снимок файловой системы выполняет в том числе и функции архива, поскольку нельзя сделать снимок файловой системы, не сохранив содержимое файлов. Но архив - это не обязательно снимок системы, он может как копировать какие-то свойства исходной системы, так и не делать этого. Но вообще для нашего разговора это не столь важно, потому что как снимок системы, так и обычный архив - это все равно уже мертвая информация, файловая система сама по себе уже с ними работать не сможет, вне зависимости от того, что именно в файлах хранится.
3 янв 2011 в 15:19