Jump to content

Ярослав

Members
  • Posts

    15
  • Joined

  • Last visited

Posts posted by Ярослав

  1. Вот как раз диалог позволяет новичкам определится. Вы обозначили что в qemu не реализована GPIO подсистема. Поэтому в документации указано что на RPI4 пример будет работать, а на qemu нет, все вроде логично для демо примера. А если Вы создает сложный проект, то делать копипасту не понимая, как это работает, плохая идея.

    И здесь, Вы предлагаете улучшить скрипт cross-build.sh ?

  2. А какой клиент IPC неможет подключится ? 

    Просто вариантов достаточно много когда клиент IPC  не может создать подключение к IPC серверу. 

     Hекорректное имя соединения IPC.

     Не стартовал сервер который должен принимать IPC соединение.

     Нет разрешения на подключение с IPC серверу.

     

    Так же если был бы предоставлен лог работы системы, это упростило бы поиск ошибки.

    • Confused 1
  3. Вообще скрипт cross-build.sh это просто небольшая обертка над командами cmake, и сделана для удобства.

    Никто не мешает исправить cross-build.sh под себя или использовать команды cmake напрямую.

     

  4. Добрый День

    Так как Ваша флешка отформатирована в формате ext2. То началный загрузчик не может ее прочитать.  И сетевые настройки не считываются. 

    [1970-01-01T00:00:11.627][Info][kl.drivers.RAMDisk][21:22][BLKPART] Add MBR/EBR partition 'ramdisk0_p0', type: 0x83, offset:   2048, size:   2048 (in sectors)
    [1970-01-01T00:00:11.640][Error][kl.drivers.RAMDisk][21:22][BLKPART] MBR is not valid, found signature = 0x0
    [1970-01-01T00:00:11.650][Error][kl.drivers.RAMDisk][21:22][BLKPART] MBR not found on disk 'ramdisk1'


    Попробуйте отформатировать флешку используя скрипт `common/prepare_hdd_img.sh` из состава дистрибутива.

  5. Kaspersky OS поддерживает, достаточно большой набор CPU (x86, arm, arm64, mips32) так же поддерживается и расширяется набор поддерживаемого оборудования.

    Но SDK KasperskyOS Community Edition предназначено для ознакомления и опробования киберимуной системы.  Поэтому была выбрана минимальная и доступная аппаратная платформа для тестирования. 

  6. Добрый день

    У Вас не установились дополнительные пакеты, не обходимые для работы SDK.
    Можно проверить каких пакетов недостаточно используя команду

    sudo apt-get check

    И установить не достающие пакеты.

    Но лучше устнавливать пакет используя команду 

    Цитата

    sudo apt-get install ./KasperskyOS-Community-Edition_1.1.1.40_en.deb

    так сразу установятся все не обходимые зависимости. 

  7. В 22.09.2023 в 18:06, Segfault сказал:

     

    В программе драйвера (упрощено для теста):

    DNetDriver* _DNetDriverEntryTest(void *context)
    {
        fprintf(stderr, "_DNetDriverEntryTest()\n");
        return(NULL);
    }
    
    int main(void)
    {
        fprintf(stderr, "DNetRegisterDriver...\n");
        DNetError err = DNetRegisterDriver(_DNetDriverEntryTest, NULL);
        if(err != DNET_EOK)
        {
            fprintf(stderr, "DNetRegisterDriver failed with %u\n", err);
        }
        fprintf(stderr, "DNetRegisterDriver passed\n");
        
        // ...
    }

    При запуске DNetRegisterDriver отрабатывает с кодом DNET_EOK, но _DNetDriverEntryTest не вызывается.

     

    Посмотрел этот пример, вижу, что при компиляции добавляется LWEXT4_LIB. Посмотрел библиотеку liblwext4.a, нашел несколько init функций внутри секции initcall_fs_section, нашел упоминание в vfs/fs.h, там же нашелся REGISTER_FILESYSTEM. Поискал аналогичное для сети, но не нашел.

    Вроде понял. ))

    Что бы создать драйвер для нового устройства и включить его в существующий API KOS(dnet_class), достаточно сложный процесс. Возможно, на уровни представленного SDK даже не получится.

    Конечно, писать свой собственный драйвер, без сетевого стека тоже не то.

     

     

  8. В 22.09.2023 в 18:06, Segfault сказал:

    Да, и сам процесс запускается. Файл init.yaml выглядит так:

    entities:
    
    # Entity "client"
    - name: ds.Client
      connections:
      - target: ds.VfsNet
        id: {var: _VFS_CONNECTION_ID, include: vfs/defs.h}
    @INIT_Client_ENTITY_CONNECTIONS+@
    
    - name: ds.VfsNet
    @INIT_VfsNet_ENTITY_CONNECTIONS@
    
    - name: ds.ModemDriver
    @INIT_ModemDriver_ENTITY_CONNECTIONS@
    
    @INIT_EXTERNAL_ENTITIES@
    

     

    Это файл init.yaml.in , этот файл преобразуется в init.yaml и вот его лучше посмотреть , init.yaml файл обычно находится в каталоге build/einit/Einit-.../  

  9. Добрый день

    Для началной работы с BULK передачей в USB.  Достаточно минимално заполнить структура UsbConfig

            {.direction = UE_DIR_OUT, (or UE_DIR_IN)
              .endpoint  = UE_ADDR_ANY,
              .type      = UE_BULK,
              .flags     = {.shortTransferOk = 1, .blockPipeOnFailure = 1},
              .cbStart   = TransferStart  (callback ),
              .cbSubmit  = CBWTransferSubmit (callback),
              .cbError   = CBWTransferError (callback)},

    Но перед началом необходимо открыть usb (UsbDeviceOpen), сделать активным (UsbIfaceDriverSetActive)

     

     

  10. Добрый день.

    В соответствии с документацией на RPI4 на плате может быть настроено до 6 UART портов на различны gpio пинах. В KasperskyOS настройка gpio пинов на работу с альтернативными функциями происходит через систему BSP основная функция BspSetConfig() (установить нужную конфигурацию) посмотреть какие на плате есть модули и какие конфигурации можно через функции BspEnumModules() BspEnumConfigs().

    После настройки BSP на работу с UART в нужной конфигурации, нужно инициализировать UART и открыв нужный порт работать с UART. Пример работы с UART есть в SDK

  11. Добрый день

    Система apt автамотически устанавливает все необходимые зависимости пакета deb. В пакете KasperskyOS-Community-Edition_1.1.1.13_en.deb зависимость от make уже есть 

    The following packages have unmet dependencies:
     kasperskyos-community-edition : Depends: make (>= 3.81) but it is not installable

    Поэтому пакет make должен устанавливатся. Перед выполнением команды apt install  желательно выполнить команду apt update для обновленяи ссылок. 

    • Like 2
×
×
  • Create New...