-
Notifications
You must be signed in to change notification settings - Fork 84
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
bea51e8
commit 33aa75c
Showing
224 changed files
with
5,994 additions
and
43,120 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule 3rd_party
updated
13 files
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,28 @@ | ||
Any user of the QP/C++ real-time embedded framework | ||
public | ||
qpcpp | ||
2025-12-31 | ||
|
||
Copyright (C) 2005 Quantum Leaps, LLC <state-machine.com>. | ||
Copyright (C) 2005 Quantum Leaps, LLC. All rights reserved. | ||
|
||
Q u a n t u m L e a P s | ||
------------------------ | ||
Modern Embedded Software | ||
|
||
SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-QL-commercial | ||
|
||
This software is dual-licensed under the terms of the open source GNU | ||
General Public License version 3 (or any later version), or alternatively, | ||
under the terms of one of the closed source Quantum Leaps commercial | ||
licenses. | ||
|
||
The terms of the open source GNU General Public License version 3 | ||
can be found at: <www.gnu.org/licenses/gpl-3.0> | ||
|
||
The terms of the closed source Quantum Leaps commercial licenses | ||
can be found at: <www.state-machine.com/licensing> | ||
The QP/C++ software is dual-licensed under the terms of the open-source | ||
GNU General Public License (GPL) or under the terms of one of the closed- | ||
source Quantum Leaps commercial licenses. | ||
|
||
Redistributions in source code must retain this top-level comment block. | ||
Plagiarizing this software to sidestep the license obligations is illegal. | ||
|
||
Contact information: | ||
NOTE: | ||
The GPL does NOT permit the incorporation of this code into proprietary | ||
programs. Please contact Quantum Leaps for commercial licensing options, | ||
which expressly supersede the GPL and are designed explicitly for | ||
closed-source distribution. | ||
|
||
Quantum Leaps contact information: | ||
<www.state-machine.com/licensing> | ||
<[email protected]> | ||
#CEF384A62BD9270573AA82386A5BE6F6E36AD848 | ||
#48B37CF39D4FD9DE279250B31FD388AFD0BE9B40 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -34,15 +34,15 @@ provides instructions on how to download, install, and get started with QP. | |
- [AppNote: "Getting Started with QP Real-Time Embedded Frameworks"][AN] | ||
contains also a tutorial, in which you build a simple "Blinky" application. | ||
|
||
## Licensing | ||
The QP frameworks (QP/C and QP/C++) are licensed under the | ||
# Licensing | ||
The QP/C++ real-time embedded framework is licensed under the | ||
[dual licensing model](https://www.state-machine.com/licensing), with | ||
the following licensing options: | ||
|
||
1. [Open-source licensing](https://www.state-machine.com/licensing#Open) under the | ||
[GNU General Public License (GPLv3)](https://www.gnu.org/licenses/gpl-3.0.en.html). | ||
|
||
> NOTE: GPL requires that all modifications to the original code | ||
> NOTE: The GPL requires that all modifications to the original code | ||
as well as your application code (Derivative Works as defined in the | ||
Copyright Law) must also be released under the terms of the GPL | ||
open source license. | ||
|
@@ -56,13 +56,26 @@ proprietary status of their code. | |
all QP frameworks can be licensed commercially, in which case you don't use | ||
any open source license and you do not violate your policy. | ||
|
||
## Files Removed from the QP/C++ Open Source GPL Distribution | ||
Due to the widespread non-compliance with the GPL, as well as infringement on the | ||
[dual-licensing model of QP frameworks][Lic], the following QP/C++ components | ||
have been **removed from the open-source GPL distribution**: | ||
- QS target-resident software tracing component | ||
- QXK dual-mode kernel | ||
|
||
> NOTE: These components are available to the [commercial licensees][Cust] with | ||
the active Support Term. Please contact [Quantum Leaps technical support][Sup] | ||
to get the complete QP/C++ framework distribution. | ||
|
||
> NOTE: To request **evaluation** of the complete QP/C++ framework, please contact | ||
Quantum Leaps at: https://www.state-machine.com/contact | ||
|
||
# About QP/C++ | ||
QP/C++ (Quantum Platform in C++) is a lightweight, open source | ||
[Real-Time Embedded Framework (RTEF)][RTEF] for building modern embedded | ||
software as systems of asynchronous, event-driven [Active Objects][Active] | ||
(actors). The [QP/C++] framework is a member of a [QP] family consisting of | ||
[QP/C] and [QP/C++] frameworks, which are strictly quality controlled, | ||
[QP/C++] and [QP/C] frameworks, which are strictly quality controlled, | ||
thoroughly documented, and [commercially licensable][Lic]. | ||
|
||
## Safer Model of Concurrency | ||
|
@@ -103,7 +116,7 @@ without any traditional RTOS. The framework contains a selection of | |
the [preemptive non-blocking QK kernel][QK], and the preemptive, | ||
[dual-mode QXK kernel][QXK] that provides all the features you might expect | ||
from a traditional RTOS. Native QP ports and ready-to-use examples are provided | ||
for major CPUs, such as ARM Cortex-M (M0/M0+/M3/M4/M7/M23/M33/M85). | ||
for major CPUs, such as ARM Cortex-M (M0/M0+/M3/M4/M7/M23/M33/...). | ||
|
||
## Traditional RTOS/OS | ||
QP/C++ can also work with a traditional RTOS, such as ThreadX, embOS, FreeRTOS, | ||
|
@@ -138,12 +151,18 @@ in your web browser. | |
# How to Help this Project? | ||
If you like this project, please give it a star (in the upper-right corner of your browser window): | ||
|
||
![GitHub star](https://www.state-machine.com/img/github-star.jpg) | ||
<p align="center"> | ||
<img src="https://www.state-machine.com/img/github-star.jpg"/><br> | ||
</p> | ||
|
||
[RTEF]: <https://www.state-machine.com/rtef> | ||
[QP]: <https://www.state-machine.com/products/qp> | ||
[QP/C]: <https://github.com/QuantumLeaps/qpc> | ||
[QP/C++]: <https://github.com/QuantumLeaps/qpcpp> | ||
[QS/C++]: <https://www.state-machine.com/qpcpp/srs-qp_qs.html> | ||
[QV]: <https://www.state-machine.com/qpcpp/srs-qp_qv.html> | ||
[QK]: <https://www.state-machine.com/qpcpp/srs-qp_qk.html> | ||
[QXK]: <https://www.state-machine.com/qpcpp/srs-qp_qxk.html> | ||
[QM]: <https://github.com/QuantumLeaps/qm> | ||
[QTools]: <https://github.com/QuantumLeaps/qtools> | ||
[QP-Rel]: <https://github.com/QuantumLeaps/qpcpp/releases> | ||
|
@@ -153,6 +172,7 @@ If you like this project, please give it a star (in the upper-right corner of yo | |
[HSM]: <https://www.state-machine.com/qpcpp/srs-qp_sm.html> | ||
[Lic]: <https://www.state-machine.com/licensing> | ||
[Cust]: <https://www.state-machine.com/customers> | ||
[Sup]: <mailto:[email protected]> | ||
[AN]: <https://www.state-machine.com/doc/AN_Getting_Started_with_QP.pdf> | ||
[Tutorial]: <https://www.state-machine.com/qpcpp/gs_tut.html> | ||
[Video]: <https://youtu.be/O7ER6_VqIH0> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
# Files Missing from the QP/C++ GPL Distribution | ||
Due to the widespread non-compliance with the GPL, as well as infringement | ||
on the [dual-licensing model of QP frameworks][Lic], the following files | ||
have been **removed from the open-source GPL distribution**: | ||
|
||
``` | ||
qpcpp | ||
| | ||
+---include | ||
| qs.hpp | ||
| qs_pkg.hpp | ||
| qxk.hpp | ||
| | ||
\---src | ||
| | ||
+---qs | ||
| qs.cpp | ||
| qs_64bit.cpp | ||
| qs_fp.cpp | ||
| qs_rx.cpp | ||
| qutest.cpp | ||
| | ||
\---qxk | ||
qxk.cpp | ||
qxk_mutex.cpp | ||
qxk_sema.cpp | ||
qxk_xthr.cpp | ||
``` | ||
|
||
> NOTE: These files are available to the [commercial licensees][Cust] with | ||
the active Support Term. Please contact [Quantum Leaps technical support][Sup] | ||
to get the complete QP/C++ framework distribution. | ||
|
||
# QP/C++ Framework Evaluation | ||
To request **evaluation** of the complete QP/C++ framework, please contact | ||
Quantum Leaps at: | ||
- https://www.state-machine.com/contact | ||
|
||
# Quantum Leaps Licensing: | ||
To learn more about the open source and commercial licensing options: | ||
- https://www.state-machine.com/licensing | ||
|
||
[Lic]: <https://www.state-machine.com/licensing> | ||
[Cust]: <https://www.state-machine.com/customers> | ||
[Sup]: <mailto:[email protected]> |
Oops, something went wrong.