XTOS / OPEN SOURCE REAL-TIME SYSTEMOPEN SOURCE · VERSION 0.9.0 · BUILD FROM SOURCE
DocsLicensing

Licensing

Read Apache-2.0, Linux GPL-2.0, and BusyBox GPL-2.0 by component.

On this page

Component licenses

The repository uses multiple licenses. The root LICENSE is Apache License 2.0. LICENSE-NOTICE lists XTOS user-space material and separately identifies the kernel, patches, and BusyBox. Read each file SPDX notice too.

PathLicenseBasis
sdk/libxtos-rt, libxtos-signal, libxtos-bciApache-2.0Source and headers are listed in section 1 of LICENSE-NOTICE.
tools/, examples/, system/, scripts/Apache-2.0XTOS user-space tools, examples, rootfs, and automation.
kernel/xtos_defconfigApache-2.0The configuration fragment separately listed by LICENSE-NOTICE.
kernel/linux/GPL-2.0 WITH Linux-syscall-notekernel/linux/COPYING; individual files may have other SPDX licenses.
kernel/patches/GPL-2.0PREEMPT_RT and XTOS kernel-side integration patches.
userspace/busybox/GPL-2.0, version 2 onlyThe separate LICENSE for BusyBox 1.37.0.

Apache-2.0 user space

Apache-2.0 permits copying, modifying, sublicensing, and distributing source or object forms within its terms, and provides the stated contributor patent license. Distributions of XTOS SDKs and tools retain licenses, attribution, NOTICE, and modification notices.

  • Provide the Apache License 2.0 text with the copy.
  • State modifications prominently in changed files.
  • Retain applicable copyright, patent, trademark, and attribution notices.
  • Retain a readable NOTICE copy when the distribution includes NOTICE material.
  • Apache-2.0 grants no general trademark rights; patent-litigation termination follows section 3 of LICENSE.
Marker and modification notice for a new user-space C file.
/* SPDX-License-Identifier: Apache-2.0 */

/* Describe modifications in the changed file. */

GPL-2.0 kernel and BusyBox

kernel/linux/COPYING uses GPL-2.0 WITH Linux-syscall-note. Kernel patches use GPL-2.0. BusyBox LICENSE states that this version may be distributed under GPL version 2 only, not version 2 or later.

DistributionMaterials
SourceRetain copyright, license, warranty, modification notices, and the applicable GPL text.
Kernel, module, or BusyBox binaryProvide corresponding source under GPL-2.0 section 3; bundling complete corresponding source is the direct option.
Corresponding sourceInclude modified source, interface definitions, build/install scripts, configuration, and kernel patches.
Written offerUnder GPL-2.0 section 3(b), the written offer lasts at least three years and must meet its third-party source-provision conditions.

Putting BusyBox, the Apache SDK, and the kernel in one initramfs does not merge their licenses. A system-image distribution must provide the required materials for the kernel, BusyBox, SDK, and tools; the root LICENSE alone is insufficient.

UAPI boundary

LICENSE-NOTICE describes the Apache-2.0 user-space SDK using GPL kernel services through ioctl and syscall ABI without linking XTOS kernel implementation. Linux-syscall-note covers ordinary syscall use; it does not relicense copied kernel drivers in user space.

Interface or implementationLicense and boundary
kernel/linux/include/uapi/linux/xtos_bci.hGPL-2.0 WITH Linux-syscall-note; defines the integer ioctl ABI.
sdk/libxtos-bci/include/xtos/bci_uapi.hLICENSE-NOTICE lists the SDK header as Apache-2.0; it must match the kernel ABI.
User-space session.copen/read/ioctl/mmap use kernel services; this does not link kernel driver code.
XTOS kernel scheduler and BCIKernel-side GPL-2.0; retain the original file licenses.

Distribution materials

Inventory components for the exact commit and artifacts. Retain license texts, component boundaries, and modification records. Images, modules, BusyBox, SDK archives, and tools may share a package, but licenses and corresponding source must match each component.

Host: read license texts and the UAPI notice from the commit.
git rev-parse HEAD
git show HEAD:LICENSE-NOTICE
git show HEAD:LICENSE
git show HEAD:kernel/linux/COPYING
git show HEAD:kernel/linux/LICENSES/preferred/GPL-2.0
git show HEAD:kernel/linux/LICENSES/exceptions/Linux-syscall-note
git show HEAD:userspace/busybox/LICENSE
git show HEAD:kernel/linux/include/uapi/linux/xtos_bci.h
  1. Retain root LICENSE, LICENSE-NOTICE, kernel COPYING, GPL, and syscall-note texts.
  2. For BusyBox distributions, retain its separate LICENSE and source and changes matching the binary.
  3. Check SPDX, upstream attribution, and modification notices; do not relabel third-party files as Apache-2.0.
  4. Match the source commit, configuration, kernel patches, and build scripts to the artifacts.

Source: LICENSE-NOTICE, LICENSE, kernel/linux/COPYING, kernel/linux/LICENSES/preferred/GPL-2.0, kernel/linux/LICENSES/exceptions/Linux-syscall-note, userspace/busybox/LICENSE, and kernel/linux/include/uapi/linux/xtos_bci.h.