чтение /proc/* из модуля

Тема в разделе "WASM.UNIX", создана пользователем nebula, 25 июл 2009.

  1. nebula

    nebula New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    19
    Хотел узнать, как читать /proc/файлы из модуля.
    Например, как узнать версию ядра во время выполнения, или как записать в ядро вывод cat /proc/version или например cat /proc/zoneinfo.
     
  2. bsnake

    bsnake New Member

    Публикаций:
    0
    Регистрация:
    11 сен 2005
    Сообщения:
    91
    Это не есть хороший тон читать такие файлы из ядра. Но если сильно надо то:
    struct file* filp_open (const char * filename, int flags, int mode);
    ssize_t vfs_read(struct file *file, const char __user *buf, size_t count, loff_t *pos);
     
  3. nebula

    nebula New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    19
    bsnake
    Спасибо за ответ) буду разбираться.
     
  4. mowgli

    mowgli New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2009
    Сообщения:
    15
    Ну таблицу системных вызовов смотрели?! Про VFS читали?!
     
  5. nebula

    nebula New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    19
    mowgli
    уже да
     
  6. mowgli

    mowgli New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2009
    Сообщения:
    15
    теперь всё стало ясно?! :)
     
  7. nebula

    nebula New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2009
    Сообщения:
    19
    mowgli
    Не всё) но процесс запущен, и не стоит на месте.

    И раз тут встречаются люди, разбирающиеся, то может..поспособствуете и в этом вопросе? http://www.wasm.ru/forum/viewtopic.php?id=33650 ( я вроде как догадываюсь что эту проблему нужно решать, по частям..создавая сначала один ip_hdr ...заполняя его, потом записываю в буфер сокета (функциями из ядра)..и тд.. и вконце отправить на сетевуху ).
    Но всёже)если кто знает , как делать правильно. То буду благодарен за помощь.