Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Написание драйвера блочного устройства 
:(
    Опции темы
chetr
Дата 14.10.2006, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 27.1.2006

Репутация: нет
Всего: нет



Изучаю Linux Device Drivers. Пишу драйвер флеш диска , расположенного на PCI плате. Нужно сделать так, чтобы его можно было разбивать на разделы, располагать на нём файловую систему и т.д. Как это реализовать? Нужно ли представлять устройство как devfs? И вообще где можно почитать про devfs и devfs_fs_kernel.h?

Это сообщение отредактировал(а) chetr - 14.10.2006, 11:38
PM MAIL   Вверх
MAKCim
Дата 14.10.2006, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



А что, в книге не написано?
Хорошая книга Р. Лав "Разработка ядра Linux", но там - общие принципы и архитектура (зато есть целая глава с описанием принципов блочного ввода/вывода)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
GrayCardinal
Дата 16.10.2006, 05:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: 8
Всего: 58



chetr
Угу, нашло значитца вдохновение, и вы стали писать драйвер флэш диска, чисто от нефиг делать, да ? Ну-ну.

ЗЫ
При регистрации девайса там указывается соклько разделов будет и их размеры, это я точно помню, для 2.6.x Про devfs читать не стоит, ибо устаревший мусор. Лучше читать про udev.


--------------------
PM MAIL WWW   Вверх
MAKCim
Дата 16.10.2006, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата

Угу, нашло значитца вдохновение, и вы стали писать драйвер флэш диска, чисто от нефиг делать, да ? Ну-ну.

Ну а что, для повышения квалификации не вредно, вещь полезная (в смысле разработка драйвера)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
chetr
Дата 16.10.2006, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 27.1.2006

Репутация: нет
Всего: нет



smile Да это не вдохновение, УИР делаю. Видимо надо из флеш диска реализовать жёсткий диск, а вот какие именно методы в нём реализовать пока проблема. Реализовал пока open, release, read,write, ioctl-не полностью. А кто знает как в логе команды strace отследить, что она обращается к моему драйверу? или может ссылку подкинете? 
PM MAIL   Вверх
MAKCim
Дата 16.10.2006, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата

А кто знает как в логе команды strace отследить, что она обращается к моему драйверу?

ну я так полагаю у тебя есть блочный спец. файл для устройства. ну дык в strace должно быть что-то типа
open("/dev/<твое устройство>", <flags>, <mode>);
это и есть обращение к твоему драйверу


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
GrayCardinal
Дата 17.10.2006, 07:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: 8
Всего: 58



Цитата

 Да это не вдохновение, УИР делаю

Ну и об чем дальше разговор ?! Хочешь потом всю жизнь бумбук курить и бабло зашибать ? Так и учись, млин. 
Тьфу, черт............  smile 

Опять у меня депрессняк.  smile 


--------------------
PM MAIL WWW   Вверх
chaos
Дата 17.10.2006, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 3
Всего: 44



а есть у кого книга  Лав Р. Разработка ядра Linux в электронном виде или может кто знает где скачать?

Заранне благодарне
PM WWW   Вверх
MAKCim
Дата 17.10.2006, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата

а есть у кого книга  Лав Р. Разработка ядра Linux в электронном виде или может кто знает где скачать?

Что-то мне кажется что нет
Попробуй google
Вообще книга стоющая, однако в русском варианте уж очень много очепяток и ошибок  smile 


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
bel_nikita
Дата 17.10.2006, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: нет
Всего: 47



chetr,
копай в сторону RFD (Resident Flash Disk).


--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
MAKCim
Дата 18.10.2006, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



chaos
нашел книгу на английском
тут


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
chetr
Дата 26.12.2006, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 27.1.2006

Репутация: нет
Всего: нет



Разобрался, написал...теперь нужно сделать так, чтобы можно было её разбивать на разделы простым fdisk'ом. Реализовал, как сделано в hd.c. Но вот проблема...когда я вызываю mkfs /dev/myflash, то затирается MBR. Отсюда вопрос где связь между mkfs и номером minor? Как VFS понимает куда писать boot сектор? Почему я так решил, потому что если принудительно ставить условие 
if (minor == 1) offset+=512; то mkfs не затирает MBR.
PM MAIL   Вверх
bsa
Дата 26.12.2006, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 16
Всего: 196



/dev/sda != /dev/sda1 smile
ты же не пытаешься создавать файловую систему на /dev/sda, а делаешь ее на /dev/sda1, который является первым разделом /dev/sda smile Так же и с флешкой.

Это сообщение отредактировал(а) bsa - 26.12.2006, 21:28
PM   Вверх
chetr
Дата 26.12.2006, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 27.1.2006

Репутация: нет
Всего: нет



Извините опечаточка получилась,   smile конечно же mkfs /dev/myflash1. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.1124 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.