Открытое ядро OpenHarmony основано на открытом исходном коде ядра Linux LTS версий 4.19.y и 5.10.y. Ядро OpenHarmony включает патчи CVE и специфичные для OpenHarmony особенности как общую основу для ядер. Производители могут адаптировать ядро с помощью применения патчей драйверов для плат.
Дополнительная информация о Linux LTS 4.19.y доступна на официальном сайте ядра.
Дополнительная информация о Linux LTS 5.10.y доступна на официальном сайте ядра.
Общие конфигурационные файлы
Конфигурация предоставляет общие конфигурационные файлы для различных систем:
Конфигурационные файлы для открытых разработочных плат
Конфигурационный файл для открытой разработочной платы Hi3516D V300 используется в стандартной системе.## Структура директорий
kernel/linux/конфиг
├── linux-4.19
│ └── arch
│ └── arm
│ └── конфиги
│ ├── hi3516dv300_small_defconfig # Конфиг малой системы открытого исходного кода Hi3516D V300 разработочной платы от HiSilicon
│ ├── hi3516dv300_standard_defconfig # Конфиг стандартной системы открытого исходного кода Hi3516D V300 разработочной платы от HiSilicon
│ ├── small_common_defconfig # Общий конфиг малой системы ядра
│ └── standard_common_defconfig # Общий конфиг стандартной системы ядра
└── linux-5.10
└── arch
└── arm
└── конфиги
├── hi3516dv300_small_defconfig # Конфиг малой системы открытого исходного кода Hi3516D V300 разработочной платы от HiSilicon
├── hi3516dv300_standard_defconfig # Конфиг стандартной системы открытого исходного кода Hi3516D V300 разработочной платы от HiSilicon
├── small_common_defconfig # Общий конфиг малой системы ядра
└── standard_common_defconfig # Общий конфиг стандартной системы ядра
$(OHOS_BUILD_HOME)/drivers/hdf_core/adapter/khdf/linux/patch_hdf.sh $(OHOS_BUILD_HOME) $(KERNEL_SRC_TMP_PATH) $(KERNEL_PATCH_PATH) $(DEVICE_NAME)
Далее используется Hi3516D V300 как пример.
Расположите патчи компонента микросхемы в соответствующий путь на основе правил расположения и названий патчей компонента микросхемы в kernel.mk в репозитории kernel/linux/build.
DEVICE_PATCH_DIR := $(OHOS_BUILD_HOME)/kernel/linux/patches/${KERNEL_VERSION}/$(DEVICE_NAME)_patch
DEVICE_PATCH_FILE := $(DEVICE_PATCH_DIR)/$(DEVICE_NAME).patch
Расположите файл конфигурации компонента микросхемы в соответствующий путь на основе правил расположения и названий файла конфигурации компонента микросхемы в kernel.mk в репозитории kernel/linux/build.
KERNEL_CONFIG_PATH := $(OHOS_BUILD_HOME)/kernel/linux/config/${KERNEL_VERSION}
DEFCONFIG_FILE := $(DEVICE_NAME)_$(BUILD_TYPE)_defconfig
```> **Примечание**:
>
> В процессе сборки проекта OpenHarmony патчи устанавливаются после того, как **kernel/linux/linux-\*\.\*** будет скопирован. Перед использованием команды сборки уровня версии OpenHarmony убедитесь, что исходный код **kernel/linux/linux-\*\.\*** доступен.
>
> Собранное ядро генерируется в директории **kernel** под директорией **out**. Измените файл конфигурации на основе собранного ядра и скопируйте сгенерированный файл **.config** в соответствующую директорию репозитория **config**. После этого конфигурация вступает в силу.## Сборка <a name="section19369206113115"></a>
Далее используется разработочная плата Hi3516D V300 и сервер Ubuntu x86 как пример.
Выполните полную сборку проекта для создания образа ядра **uImage**.
./build.sh --product-name Hi3516DV300 # Собрать образ Hi3516D V300. --build-target build_kernel # Собрать образ ядра uImage для Hi3516D V300. --gn-args linux_kernel_version="linux-5.10" # Собрать указанную версию ядра.
## Участвующие репозитории <a name="section1371113476307"></a>
<u>kernel_linux_config</u>
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )