Важная информация

User Tag List

Страница 46 из 47 ПерваяПервая ... 424344454647 ПоследняяПоследняя
Показано с 451 по 460 из 466

Тема: Алан Кокс представил Unix-подобную ОС Fuzix, ядро которой потребляет около 40 Кб ОЗУ

  1. #451
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eltaron Посмотреть сообщение
    Эммм, откуда инфа? Сокеты как сокеты, где там обрубок, тем более uIP?
    Так там вроде никогда другого и не было? Был обрубок uIP Дункеля, причем прикрученный не в ядро а как-то сбоку. Ну если не считать первых заглушек для программирования верхних уровней стека без наличия нижних. По крайней мере полгода-год назад когда я еще находл в себе силы перекапывать эту слабоструктурированную кучу-малу. Если переписали, то интересно как (не слышал что для 8-биток родили какие-то новые реализации стека в последние год-два). А если нет, и на уровень хидеров выведено нечто а-ля сокеты, уже неинтересно если унутре по-прежнему оно (наелся я этого uIP в свое время, плевались все кому надо было что-то чуть более сложное чем веб-сервер из примеров Дункеля или Контики где оно интегрировано и всё уже написано самим автором).

    А обрубок (помимо дикой упрощенности uIP в ущерб функционалу и производительности), потому что IP должен быть в ядре (чего у них не было сделано), а не в либе целиком. Чтобы процессы читая сокет блокируемо или неблокируемо, по этому типу ядром автоматом переводились в саспенд освобождая слайсы ЦПУ, или будились (доставались из свапа) при поступлении данных. А так как было сделано, так это я и сейчас могу прилинковать либу uIP прямо в приложение, благо порт есть, но это совсем не то чего хотелось бы. А нет, не могу, начну писать код под uIP и затошнит.

    - - - Добавлено - - -

    Это остаточные знания. С интервалом раз в год поглядываю в исходнике на ГИТ как там дело движется с TCP/IP т.к. это единственное что всерьез интересует меня в том проекте на предмет портануть в UZIX, каждый раз дико матерясь т.к. этот модуль лежит как-то хрен сразу найдешь. И в последний раз с год назад там все еще был код от uIP (я его хорошо знаю т.к. портировал на Орион, да и копирайты нам все на месте) и никакого другого я ни разу не нашел (если не считать версию от 2015 года где был только скелет верхних уровней стека с каким-то дурным роутером в PC вместо реализации собственно IP). Сейчас снова полез уточнить, вдруг переписали и убрали uIP, и снова по-быстрому не нахожу там где по логике расчитывал этот модуль найти (постоянная история), чтоб их так перетак.
    Последний раз редактировалось Error404; 07.11.2019 в 15:14.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  2. #451
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #452
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    снова по-быстрому не нахожу там где по логике расчитывал этот модуль найти (постоянная история), чтоб их так перетак
    Имея информацию, что оно там не совсем в ядре, я сходу нашёл: FUZIX/Applications/netd
    В ядре только драйвера устройств.

  4. #453
    Sinclair User Аватар для Eltaron
    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,045
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    463
    Поблагодарили
    326 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Так там вроде никогда другого и не было?
    По факту там обычные сокеты - bind, listen, connect, recvfrom и т.д. (https://github.com/EtchedPixels/FUZI.../netdev.h#L102)

    Был обрубок uIP Дункеля, причем прикрученный не в ядро а как-то сбоку.
    Всё, я понял. Ты об этом, наверное - https://sites.google.com/site/cocobo...thecoconiccard
    Автор этого дела сам пишет, что это слепленный за вечер хак и что он всё сделает нормально, когда разберется, как писать сетевые драйверы.

    Пока ещё не сделал. Вот этот хак - https://github.com/EtchedPixels/FUZI...ns/netd/netd.c
    И со стороны ядра фальшивый драйвер сетевого интерфейса - https://github.com/EtchedPixels/FUZI...t/net_native.c

    Довольно изящно, кстати

    А нет, не могу, начну писать код под uIP и затошнит.
    Изящно потому, что не нужно писать под uIP. Крутится там себе где-то, и бог с ним. Код под fuzix работает только с сокетами и знать ничего про uIP не знает.
    Ну и не стоит думать, что это единственный способ сетевого взаимодействия. Можно не тянуть себе в систему весь этот uIP, а делать всё через "настоящие" драйверы, которые есть, к примеру, для W5x00 и ENC28J60. Всё тут: https://github.com/EtchedPixels/FUZI...Kernel/dev/net
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI

  5. Этот пользователь поблагодарил Eltaron за это полезное сообщение:

    Error404 (08.11.2019)

  6. #454
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eltaron Посмотреть сообщение
    Можно не тянуть себе в систему весь этот uIP, а делать всё через "настоящие" драйверы, которые есть, к примеру, для W5x00 и ENC28J60. Всё тут: https://github.com/EtchedPixels/FUZI...Kernel/dev/net
    Без uIP наверное можно использовать Визнеты (у них стек реализован внутри контроллера), но для ENC28J60 таки нужно что-то вроде uIP, т.к. ENC28J60 это только модуль MAC/PHY.

    Было бы здорово если затянуть в ядро lwIP, но для него надо несколько 64к страниц. Зато это полнофункциональный стек со сборкой кадров, т.е. там не будет ограничения скорости в 6 кб/c и буфера приема в 1.5кб как у uIP и ему подобных, где для упрощения пакет всегда равен одному кадру.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  7. #455
    Activist Аватар для nihirash
    Регистрация
    22.05.2005
    Адрес
    г. Санкт-Петербург
    Сообщений
    394
    Записей в дневнике
    20
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    149
    Поблагодарили
    62 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Без uIP наверное можно использовать Визнеты (у них стек реализован внутри контроллера)
    Или сделать драйвер для ESP-8266 - тот тоже может быть аппаратным TCP-стеком.

    Да и, на самом деле, особо больше, чем uIP и не требуется на таких мощностях.
    Люблю компьютеры на Z80, не люблю срачи на пустом месте.

  8. #456
    Sinclair User Аватар для Eltaron
    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,045
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    463
    Поблагодарили
    326 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pinny Посмотреть сообщение
    Или сделать драйвер для ESP-8266 - тот тоже может быть аппаратным TCP-стеком.
    Оно практически уже есть - сокеты через AT-команды. Не уверен, что совместимо с соответствующей прошивкой для ESP, но всё равно уже очень близко.
    https://github.com/EtchedPixels/FUZI...v/net/net_at.c

    Цитата Сообщение от Error404 Посмотреть сообщение
    Без uIP наверное можно использовать Визнеты (у них стек реализован внутри контроллера), но для ENC28J60 таки нужно что-то вроде uIP, т.к. ENC28J60 это только модуль MAC/PHY.
    Да, пардон, ENC28J60 там не в виде готового драйвера, а просто какая-то заготовка. И в единственной платформе, где оно используется, работа действительно идет через net-native, т.е. через uIP.
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI

  9. #457
    Activist Аватар для nihirash
    Регистрация
    22.05.2005
    Адрес
    г. Санкт-Петербург
    Сообщений
    394
    Записей в дневнике
    20
    Спасибо Благодарностей отдано 
    14
    Спасибо Благодарностей получено 
    149
    Поблагодарили
    62 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eltaron Посмотреть сообщение
    Оно практически уже есть - сокеты через AT-команды. Не уверен, что совместимо с соответствующей прошивкой для ESP, но всё равно уже очень близко.
    https://github.com/EtchedPixels/FUZI...v/net/net_at.c
    Ну это совсем куцый вариант. Нормальная фирмварь для esp-ши может в 4тсокета одновременно, они могут быть как TCP, так и UDP, как исходящие, так и принимающие.

    Чего для сетевого софта под такие машины имхо достаточно.
    Люблю компьютеры на Z80, не люблю срачи на пустом месте.

  10. #458
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от pinny Посмотреть сообщение
    Ну это совсем куцый вариант. Нормальная фирмварь для esp-ши может в 4тсокета одновременно, они могут быть как TCP, так и UDP, как исходящие, так и принимающие.
    Чего для сетевого софта под такие машины имхо достаточно.
    У варианта с ESP не хватает одного - нормального интерфейса к ESP с хоста. RS-232 так себе решение (которое к тому же мало где есть "из коробки"), и если уж для подключения чего-то городить, то тогда лучше подошел бы на 2 порядка более быстрый SPI. Да вот беда, чтобы ESP, имеющее SPI, умело через него общаться (а не тупо подключать слейвы), нужно перепиленное фирмваре ESP. SFS такое начинал делать пару лет тому назад, но видимо бросил, а жаль.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. #459
    Sinclair User Аватар для Eltaron
    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,045
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    463
    Поблагодарили
    326 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    https://pluspora.com/p/2463796
    Алан Кокс заявил, что до пенсионного возраста дожить нереально, поэтому он собрался на пенсию прямо сейчас, с 1 января. Будет писать фузикс и наслаждаться жизнью.
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI

  12. Этот пользователь поблагодарил Eltaron за это полезное сообщение:

    Error404 (16.11.2019)

  13. #460
    Master
    Регистрация
    27.01.2005
    Сообщений
    905
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    176
    Поблагодарили
    142 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    SFS такое начинал делать пару лет тому назад, но видимо бросил, а жаль.
    Я начинал делать с RS232. И бросил, потому что понял: без прерываний от компорта на спеке получается гумно.

    ИМХО, надо идти другим путём.

    Возможно сделать "сетевуху" из ESP8266 под слот NEMOBUS, которая будет общаться со спеком по DMA и генерировать прерывания. Прошивка ESP8266, конечно нужна будет не стандартная, но это не проблема.

    По сути вся эта "сетевуха" - ESP8266 плюс регистры и формирователи.

    Тогда со скоростью будет всё хорошо и не будет дурных циклов ожидания.

    Кстати, мои эксперименты с ESP8266 не пропали даром. Вот что вышло: https://shiotiny.ru/ (правда, к спектруму это отношения не имеет).

Страница 46 из 47 ПерваяПервая ... 424344454647 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Куплю БК 0010 или подобную машинку в Украине
    от LeBohdan в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 06.07.2008, 23:29
  2. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16
  3. Ответов: 16
    Последнее: 02.08.2005, 12:20
  4. Ответов: 10
    Последнее: 18.02.2005, 17:45

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •