ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
716440 Топик полностью
Evgeny_CD, Архитектор (30.11.2016 20:42, просмотров: 397) ответил LightElf на Частично уже многое украдено до вас, по ссылке гипервизор для кортексов М
Спасибо, но это порождение сумрачного гения маркетологов из ARM. У них подгорает - надо срочно пропихивать Cortex-M23, Cortex-M33 ->, а народ до сих пор не научился MPU использовать. http://caxapa.ru/711329.html
То, что они сделали своб либу ОСь-нейтральной, это хорошо, но удивительно. В целом защита памяти - это первейшая задача ОСи, и то, что никто (из простых RTOS) до сих пор толком не использует MPU - это загадка природы. Все управление у них расчитано на одинаковые блоки некоторого фиксированного размера. И возможные потери памяти от несоотвествия размеров макроблоков конкретным прикладным задачам это только увеличит. Гипервизором эту либу назвать можно с большой натяжкой. При внешней схожеси идей я предложил гораздо более компактный вариант - дескрипторы для каждого объекта с описанием прав доступа для каждого PID, который тоже контролируется аппаратно. С учетом эффективного алгоритма выделения памятие TLSF это позволит минимизировать потери памяти по типу потерь на границах странц при обычной работе MMU|MPU. Если уменьшать размер блока, то, по причине ограниченности количества MPU регионов, будем терять быстродействие. Конечно, когда на борту 400 МГц Cortex-M7 и 1Мбайт ОЗУ - потери на границах, скажем,4к блоков вроде как не страшны. А вот при 64 и 128К ОЗУ на борту это уже становится ощутимым. Суть проста. Очень многие здачи IoT, если думать хоть иногда мозгами, влезут в 128 к ОЗУ и, скажем, 512к FLASH. Что есть в мире MCU довольно давно. И сейчас такой MCU (с простой периферией) стоит в опте бакса 4 (PIC32MX370F512H - $4.3 в партии 5к на сайте Microchip) Но как навязать нарождающемуся миру IoT необходимость перехода на новый уровень (как решений, так и цен)? Вначале надо поиграть на теме безопасности. С показательным построением миллионного ботнета из кофеварок. Done (там были сетевые видеокамеры, но не суть). Потом надо выпустить "сертифицированные безопасные решения". Лучше сразу на Cortex-M23, Cortex-M33. Ну или нахудой конец на 400Мгц 1М SRAM Cortex-M7. Далее оно само пойдет :)