Перейти к содержанию

    

Общие знания по Linux/ARM

Проверить не могу, к сожалению:

dd if=/dev/zero of=/tmp/fs bs=4k count=100
mkfs.ntfs /tmp/fs
/tmp/fs is not a block device.
Refusing to make a filesystem here!

Читайте: NTFS чувствительна к регистру, т.е. можно создать файлы xXXx, XxxX и XXxx — и это будут разные файлы! Выкиньте уже свою мастдайку!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
PS у бареметал, в силу закрытости разработки, есть очевидные минусы, помимо потраченных сил - изобретение велосипедов с нуля (для поддержки стандартных протоколов и интерфейсов) и куча багов, которые в опенсорс вылавливает сообщество..

 

Скажем так, с нуля тут тоже никто не изобретает, ибо на "правильные" чипы идет planform SDK, где уже практически на все железо есть драйвера, да, протоколы надо реализовывать, но большой сложности в этом нет.

А насчет кучи багов, которые якобы отлавливаются кем-то... Во первых, отлавливается то, что использует большинство, например сетевые стеки, ФС и т.д. Но в задачах, особенно нетривиальных, приходится писать свои драйвера, возможно протоколы и программы, и не на баше и пр. скриптах, а на чистом Си, как правило, и вот тут все куда хуже, надо знать все закоулки ОС, в которой будет работать программа, отлавливать те же глюки и никакое сообщество тут не поможет...

Просто в большинстве своем, на том же линуксе сделают какой-то скрипт, подсунут стандартный драйвер и ба, заработало...Так это типичный подход ардуинщика... А реально программировать на нем умеют единицы.

 

ЗЫ. Ну и сам столкнулся в свое время с проблемой. На сд-карте, кде была основная часть линуксовых файлов, с корневой ФС и т.д. У клиента слетела ФС, то-ли при отключении питания и происходила запись логов, то=ли еще что, но перестала загружаться система, клиент полный дуб в линуксе и вообще неуверенный пользователь ПК. Вот как мне ему объяснить все процессы восстановления линуксовой системы??? Проще приехать через пол-страны и сделать самому... Вот тогда и решил, что на сд-карте будет только бинарь программы, конфиг и все под фат32, которую можно использовать на любом компе. Проблема исчезла сама собой :rolleyes:

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Проверить не могу, к сожалению:

Так loop device в помощь, только размер NTFS-раздела должен быть больше 1Мбайт.

Создает разные файлы. Как их видит и как работает с ними винда - не в курсе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Но в задачах, особенно нетривиальных, приходится писать свои драйвера, возможно протоколы и программы, и не на баше и пр. скриптах, а на чистом Си, как правило, и вот тут все куда хуже, надо знать все закоулки ОС, в которой будет работать программа, отлавливать те же глюки и никакое сообщество тут не поможет...

Просто в большинстве своем, на том же линуксе сделают какой-то скрипт, подсунут стандартный драйвер и ба, заработало...Так это типичный подход ардуинщика... А реально программировать на нем умеют единицы.

 

Я вот не умею пока что писать ни дрове, ни скрипты на ось (в данном случае у меня андроид и врядли это изменится). Поэтому и смотрю в сторону добавления обработки CAN шины внутри оси, более того реализовать наш протокол поднятый на шине и наверх уже давать удобный интерфейс по самому протоколу.

Возможно скриптами или чем-то еще это сделать гораздо проще, но я пока слабо разбираюсь в этом деле и не вижу решения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Так loop device в помощь, только размер NTFS-раздела должен быть больше 1Мбайт.

При чем здесь loop? Все остальные mkfs работают с файлами, а ntfs файл не хочет форматировать, сделал 2МБ, та же песня:

dd if=/dev/zero of=mdtest bs=1k count=2048
mkfs.ntfs mdtest
mdtest is not a block device.
Refusing to make a filesystem here!

 

А, дурак я! Опцию '-F' надо было указать!

mkfs.ntfs -F mdtest
...
mount -o loop mdtest 1
cd 1
>> Xxx
>> XxX
>> XXX
>> xxx
ls
xxx  Xxx  XxX  XXX

На всякий случай еще так:

cd ..
umount 1
mount -o loop mdtest 1
ls 1
xxx  Xxx  XxX  XXX

 

Что и требовалось доказать! Но, как я говорил уже, даже в вики написано, что регистрозависимые имена!

Изменено пользователем Эдди

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Что и требовалось доказать! Но, как я говорил уже, даже в вики написано, что регистрозависимые имена!
Если вы внимательно прочитаете то, что написано по вашей же ссылке на stackoverflow, то увидите:
the case sensitivity of file opening or creation is mediated by the FILE_FLAG_POSIX_SEMANTICS flag passed to CreateFile.

Ну и кто тут у нас выставляет FILE_FLAG_POSIX_SEMANTICS?

 

Для чистоты эксперимента создайте в Линуксе tar с файлами с отличающимися регистром именами, и распакуйте его в Венде. Не на ntfs через fuse в Линуксе, а в самой что ни на есть нативной Венде.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А нафиг мне эта ваша мастдайка сдалась?

Вопрос был о регистрозависимости имен файлов в NTFS, это так. А то, что вы пользуетесь каким-нибудь древним хрюнделем, где не поддерживается регистрозависимость имен файлов, — исключительно ваши проблемы!

Изменено пользователем Эдди

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
А нафиг мне эта ваша мастдайка сдалась?

Вопрос был о регистрозависимости имен файлов в NTFS, это так. А то, что вы пользуетесь каким-нибудь древним хрюнделем, где не поддерживается регистрозависимость имен файлов, — исключительно ваши проблемы!

 

Такое ощущение, порой что с 16 летней школотой тут общаешься. Мастдайка...

 

Не поддерживает Windows разные регистры в названиях. NTFS поддерживает, а Win нет. Специально запустил вируталку чтобы заскриншотить.

 

Основная проблема в сборке ядра на Windows это регистрозависимые имена файлов.

 

Специально запустил вируталку чтобы заскриншотить.

post-23021-1521980103_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация