1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/open-skyeye-code

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Фон

SkyEye берёт своё начало в 2002 году. Группа энтузиастов, интересующихся операционными системами, обсуждала технологии в интернете и хотела изучить принципы работы операционных систем без ограничений со стороны аппаратного обеспечения. Они предложили идею программного моделирования аппаратных средств, включая SkyEye, инициатором которого стал профессор Чэнь Юй из Университета Цинхуа.

В то время уже существовали подобные проекты, такие как ARMulator от uCLinux, который мог имитировать разработку плат AT91 и поддерживать работу UClinux на них. Основываясь на дизайне и опыте ARMulator, профессор Чэнь и другие люди запустили проект с открытым исходным кодом SkyEye в 2003 году, которым активно пользовались любители и студенты по всему миру.

После двух десятилетий технического развития SkyEye завершил коммерческую инкубацию и стал одним из представителей промышленных программных решений MBSE (Model-Based Systems Engineering), широко применяемым в авиации, космонавтике, железнодорожном транспорте, машиностроении и других областях.

Проект

Open-SkyEye — это проект программного обеспечения с открытым исходным кодом, представляющий собой версию SkyEye для сообщества разработчиков. Его цель — создать интегрированную среду разработки на основе чистого программного обеспечения на распространённых платформах, таких как Linux, Windows и Mac OS, имитируя распространённые встроенные компьютерные системы.

Пользователи могут запускать различные операционные системы, такие как Linux, RTLinux, RTThread, FreeRTOS, μC/OS и LiteOS, а также различные системные программы, такие как TCP/IP, графическая и файловая подсистемы, и анализировать и тестировать их на уровне исходного кода.

Текущая версия с открытым исходным кодом разрабатывается и поддерживается компанией Zhejiang Dijie Software Technology Co., Ltd. [см. коммерческую версию SkyEye].

Быстрый старт

Open-SkyEye делится на версии для распространения и разработки. Версия для распространения имеет относительно простую конфигурацию, не требующую компиляции исходного кода и загрузки примеров использования, и основана на виртуальной машине и Ubuntu, что подходит для начинающих пользователей. Версия для разработки позволяет компилировать и использовать новейший исходный код Open-SkyEye, предоставляя возможность реального опыта работы с новыми функциями и примерами использования на базе WSL и Ubuntu и подходит для опытных разработчиков.

(1) Установка версии для распространения через образы

На примере Ubuntu 16.04 сначала запустите службу Docker с помощью команды sudo service docker start. Обратите внимание, что для разных операционных систем или платформ могут потребоваться разные методы, поэтому рекомендуется обратиться к соответствующим руководствам.

Рекомендуется использовать команду для получения образа:

sudo docker pull skyeyehub/opt:v1.3.6-beta

[или вручную загрузить образ (требуется учётная запись)]

После загрузки образа можно использовать команду sudo docker images, чтобы проверить список образов и убедиться в успешной загрузке:

Чтобы обеспечить нормальное отображение экрана, хост-компьютер также должен установить некоторые программы. Используйте следующую команду (для разных операционных систем могут потребоваться разные команды):

sudo apt-get install x11-xserver-utils && xhost +

Эта команда открывает доступ, позволяя всем пользователям получать доступ к интерфейсу отображения X11.

Теперь мы создадим новый контейнер на основе этого образа. Эта команда немного сложна, поэтому сначала она будет представлена, а затем объяснена:

sudo docker run -it \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e DISPLAY=:0 \
-e GDK_SCALE \
-e GDK_DPI_SCALE \
--name open-skyeye skyeyehub/opt:v1.3.6-beta /bin/bash

Сначала run является основной командой для создания контейнера, -v /tmp/.X11-unix:/tmp/.X11-unix, -e DISPLAY=:0 -e GDK_SCALE -e GDK_DPI_SCALE — это совместное использование возможностей отображения хоста с контейнером. Чтобы получить местоположение графического дисплея, используйте следующую команду:

printenv DISPLAY

Если полученное значение :0.0, обновите -e DISPLAY=:0 при создании контейнера.

--name open-skyeye skyeyehub/dev:v1 — это имя контейнера, за которым следует имя образа, /bin/bash запускает bash. Для получения дополнительной информации о Docker и его командах обратитесь к другим разделам.

Однако совместное использование хост-дисплея не является обязательным, если вы не используете пользовательский интерфейс Open-SkyEye и программное обеспечение для последовательного подключения putty. Команда для создания контейнера без функций отображения выглядит следующим образом:

sudo docker run -it \
-p 65500:65500 \
--name open-skyeye skyeyehub/opt:v1.3.6-beta /bin/bash

где -p 65500:65500 — порт совместного использования для доступа к данным последовательного порта целевого устройства через telnet.

Обратите внимание, что если вам нужно создать несколько контейнеров, необходимо изменить имя после --name, контейнеры не могут иметь одинаковые имена.

Создав контейнер, вы автоматически войдёте в bash, как показано ниже:

Теперь вы можете ввести команду skyeye, чтобы запустить Open-SkyEye:

(2) Установка версии для разработки через образы

1. Подготовка

Версия для распространения Open-SkyEye основана на образах Docker, которые можно легко использовать и разрабатывать. В настоящее время мы протестировали множество операционных систем, таких как Ubuntu, Arch Linux, Windows и macOS, и все они поддерживают производственную среду Docker.

Помимо установки Docker и загрузки образов, вам также потребуется клонировать или загрузить некоторый код (исходный код Open-SkyEye и примеры тестирования). Список ссылок следующий:

Исходный код Open-SkyEye (или git clone https://gitee.com/open-skyeye/code.git)

Примеры тестирования Open-SkyEye (или git clone https://gitee.com/open-skyeye/testcase.git)

При получении исходного кода предпочтительно выбирать версию с тегом.

Инструкции по установке Docker просты, и вы можете обратиться к онлайн-ресурсам для установки в соответствии с вашей средой.

Для удобства разработки и отладки после загрузки исходного кода и примеров тестирования создайте папку и поместите их туда. Эту папку можно будет использовать совместно с контейнерами.

mkdir /home/zevorn/skyeye-workspace
cd /home/zevorn/skyeye-workspace
git clone -b v1.3.6-beta https://gitee.com/open-skyeye/code.git
git clone https://gitee.com/open-skyeye/testcase.git

2. Импорт образов и создание контейнеров

Возьмём Ubuntu 20.04 в качестве примера, сначала запустим службу Docker с помощью команды sudo service docker start, обратите внимание, что для разных операционных систем или платформ могут потребоваться разные методы, поэтому рекомендуется обратиться к соответствующим руководствам.

[Нажмите здесь, чтобы загрузить образ (необходимо войти в систему dockerhub)] или использовать команду для загрузки:

sudo docker pull skyeyehub/dev:v1.0.0-rc0

Вы можете использовать docker images для проверки списка образов и подтверждения успешной загрузки:

Чтобы гарантировать нормальное отображение, хост также должен установить некоторое программное обеспечение. Используйте следующую команду (разные операционные системы могут потребовать разных команд):

sudo apt-get install x11-xserver-utils && xhost +

Эта команда предоставляет общий доступ к возможностям отображения X11 хоста.

Теперь создадим новый контейнер на основе этого образа. Сначала run — основная команда для создания контейнеров, -v /tmp/.X11-unix:/tmp/.X11-unix, -e DISPLAY=:0 -e GDK_SCALE -e GDK_DPI_SCALE совместно используют возможности отображения хоста с контейнерами, используйте следующую команду для получения местоположения графического дисплея:

printenv DISPLAY

Если получено значение :0.0, при создании контейнера обновите -e DISPLAY=:0.

Затем -v /home/zevorn/skyeye-workspace/:/home/skyeye-workspace — совместное использование папки хоста с контейнером, где /home/zevorn/skyeye-workspace/ — путь к папке хоста, а /home/skyeye-workspace — путь внутри контейнера.

Наконец, --name open-skyeye skyeyehub/dev:v1.0.0-rc0 /bin/bash — имя контейнера и образ, /bin/bash запускает оболочку bash. /home/zevorn/skyeye-workspace/:/home/skyeye-workspace` — это общий доступ к папке для контейнера. В этой папке находятся исходный код Open-SkyEye и тестовые сценарии.

--name open-skyeye skyeyehub/dev:v1 — имя контейнера, за которым следует название образа. /bin/bash — запуск с помощью bash. Более подробную информацию об использовании Docker и командах можно найти в следующих разделах.

Однако общий доступ к экрану хоста не является обязательным, если вы не используете пользовательский интерфейс Open-SkyEye или программное обеспечение для последовательного порта putty. Вот как создать контейнер без общего доступа к экрану:

docker run -it \
-v /home/zevorn/skyeye-workspace/:/home/skyeye-workspace \
-p 65500:65500 \
--name open-skyeye skyeyehub/dev:v1.0.0-rc0 /bin/bash

Здесь -p 65500:65500 — общий доступ к IP-порту, который используется для доступа к данным последовательного порта целевого устройства через telnet.

Обратите внимание, что при создании нескольких контейнеров необходимо изменить имя после --name. Контейнеры не могут иметь одинаковые имена.

3. Компиляция Open-SkyEye

После создания контейнера вы автоматически попадаете в bash. Эффект следующий:

Затем мы переходим в каталог, общий для контейнера, и вводим команду cd /home/skyeye-workspace/code && ls, чтобы просмотреть каталог кода:

Теперь, убедившись, что всё в порядке, мы можем скомпилировать Open-SkyEye! Введите следующую команду:

./autogen.sh && ./configure --prefix=/home/skyeye-workspace/opt/skyeye && make -j4 && make install

Если не указать ./configure --prefix, Open-SkyEye будет установлен по умолчанию в /opt/skyeye.

После завершения компиляции вы увидите следующее изображение:

Теперь вы можете выполнить команду /home/skyeye-workspace/opt/skyeye/bin/skyeye, чтобы запустить skyeye:


更多教程

Для получения дополнительной информации об использовании Open-SkyEye нажмите здесь.

Чтобы изучить Open-SkyEye, присоединяйтесь к группе QQ: 238612183.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
GPL-2.0
Отмена

Обновления (1)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/open-skyeye-code.git
git@api.gitlife.ru:oschina-mirror/open-skyeye-code.git
oschina-mirror
open-skyeye-code
open-skyeye-code
master