This commit is contained in:
QL 2020-03-23 19:57:32 -04:00
parent 4d9250d049
commit f364facee7
9 changed files with 195 additions and 213 deletions

View File

@ -69,28 +69,28 @@
5 2 41 1 5 QTimeEvt_wasDisarmed@513-517@..\src\qf\qf_time.c
8 1 31 1 10 QTimeEvt_currCtr@535-544@..\src\qf\qf_time.c
11 2 76 1 16 QF_init@72-87@..\src\qk\qk.c
3 1 10 1 4 QF_stop@101-104@..\src\qk\qk.c
6 2 26 1 8 initial_events@109-116@..\src\qk\qk.c
10 3 36 1 14 QF_run@127-140@..\src\qk\qk.c
21 5 140 7 32 QActive_start_@164-195@..\src\qk\qk.c
22 2 121 1 33 QK_schedLock@219-251@..\src\qk\qk.c
21 4 131 1 33 QK_schedUnlock@269-301@..\src\qk\qk.c
15 3 78 1 19 QK_sched_@317-335@..\src\qk\qk.c
62 16 375 1 106 QK_activate_@347-452@..\src\qk\qk.c
3 1 10 1 4 QF_stop@107-110@..\src\qk\qk.c
6 2 26 1 8 initial_events@115-122@..\src\qk\qk.c
10 3 36 1 14 QF_run@133-146@..\src\qk\qk.c
21 5 140 7 32 QActive_start_@170-201@..\src\qk\qk.c
22 2 121 1 33 QK_schedLock@225-257@..\src\qk\qk.c
21 4 131 1 33 QK_schedUnlock@275-307@..\src\qk\qk.c
15 3 78 1 19 QK_sched_@323-341@..\src\qk\qk.c
62 16 375 1 106 QK_activate_@353-458@..\src\qk\qk.c
9 2 64 1 13 QF_init@73-85@..\src\qv\qv.c
3 1 10 1 4 QF_stop@99-102@..\src\qv\qv.c
40 9 202 1 75 QF_run@112-186@..\src\qv\qv.c
14 3 110 7 20 QActive_start_@210-229@..\src\qv\qv.c
3 1 10 1 4 QF_stop@104-107@..\src\qv\qv.c
40 9 202 1 75 QF_run@117-191@..\src\qv\qv.c
14 3 110 7 20 QActive_start_@215-234@..\src\qv\qv.c
14 2 108 1 22 QF_init@75-96@..\src\qxk\qxk.c
3 1 10 1 4 QF_stop@110-113@..\src\qxk\qxk.c
6 2 26 1 8 initial_events@118-125@..\src\qxk\qxk.c
10 3 36 1 15 QF_run@135-149@..\src\qxk\qxk.c
23 6 160 7 34 QActive_start_@174-207@..\src\qxk\qxk.c
25 3 144 1 35 QXK_schedLock@239-273@..\src\qxk\qxk.c
21 4 134 1 33 QXK_schedUnlock@296-328@..\src\qxk\qxk.c
53 7 281 1 68 QXK_sched_@343-410@..\src\qxk\qxk.c
79 16 503 1 132 QXK_activate_@422-553@..\src\qxk\qxk.c
13 2 76 1 20 QXK_current@556-575@..\src\qxk\qxk.c
3 1 10 1 4 QF_stop@115-118@..\src\qxk\qxk.c
6 2 26 1 8 initial_events@123-130@..\src\qxk\qxk.c
10 3 36 1 15 QF_run@140-154@..\src\qxk\qxk.c
23 6 160 7 34 QActive_start_@179-212@..\src\qxk\qxk.c
25 3 144 1 35 QXK_schedLock@244-278@..\src\qxk\qxk.c
21 4 134 1 33 QXK_schedUnlock@301-333@..\src\qxk\qxk.c
53 7 281 1 68 QXK_sched_@348-415@..\src\qxk\qxk.c
79 16 503 1 132 QXK_activate_@427-558@..\src\qxk\qxk.c
13 2 76 1 20 QXK_current@561-580@..\src\qxk\qxk.c
16 4 113 2 25 QXMutex_init@86-110@..\src\qxk\qxk_mutex.c
69 12 541 2 109 QXMutex_lock@133-241@..\src\qxk\qxk_mutex.c
45 10 323 1 69 QXMutex_tryLock@264-332@..\src\qxk\qxk_mutex.c

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-03-17
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -95,14 +95,6 @@ void QF_init(void) {
/* init the global condition variable with the default initializer */
pthread_cond_init(&QV_condVar_, NULL);
/* clear the internal QF variables, so that the framework can (re)start
* correctly even if the startup code is not called to clear the
* uninitialized data (as is required by the C Standard).
*/
QF_maxPool_ = 0U;
QF_bzero(&QF_timeEvtHead_[0], (uint_fast16_t)sizeof(QF_timeEvtHead_));
QF_bzero(&QF_active_[0], (uint_fast16_t)sizeof(QF_active_));
l_tick.tv_sec = 0;
l_tick.tv_nsec = NANOSLEEP_NSEC_PER_SEC/100L; /* default clock tick */
l_tickPrio = sched_get_priority_min(SCHED_FIFO); /* default tick prio */

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -98,14 +98,6 @@ void QF_init(void) {
*/
pthread_mutex_lock(&l_startupMutex);
/* clear the internal QF variables, so that the framework can (re)start
* correctly even if the startup code is not called to clear the
* uninitialized data (as is required by the C Standard).
*/
QF_maxPool_ = 0U;
QF_bzero(&QF_timeEvtHead_[0], sizeof(QF_timeEvtHead_));
QF_bzero(&QF_active_[0], sizeof(QF_active_));
l_tick.tv_sec = 0;
l_tick.tv_nsec = NANOSLEEP_NSEC_PER_SEC/100L; /* default clock tick */
l_tickPrio = sched_get_priority_min(SCHED_FIFO); /* default tick prio */

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -67,19 +67,8 @@ static DWORD WINAPI ticker_thread(LPVOID arg);
/* QF functions ============================================================*/
void QF_init(void) {
extern uint_fast8_t QF_maxPool_;
extern QTimeEvt QF_timeEvtHead_[QF_MAX_TICK_RATE];
InitializeCriticalSection(&l_win32CritSect);
QV_win32Event_ = CreateEvent(NULL, FALSE, FALSE, NULL);
/* clear the internal QF variables, so that the framework can (re)start
* correctly even if the startup code is not called to clear the
* uninitialized data (as is required by the C Standard).
*/
QF_maxPool_ = 0U;
QF_bzero(&QF_timeEvtHead_[0], sizeof(QF_timeEvtHead_));
QF_bzero(&QF_active_[0], sizeof(QF_active_));
}
/****************************************************************************/
void QF_enterCriticalSection_(void) {

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -64,9 +64,6 @@ static DWORD WINAPI ao_thread(LPVOID arg);
/* QF functions ============================================================*/
void QF_init(void) {
extern uint_fast8_t QF_maxPool_;
extern QTimeEvt QF_timeEvtHead_[QF_MAX_TICK_RATE];
InitializeCriticalSection(&l_win32CritSect);
/* initialize and enter the startup critical section object to block
@ -74,14 +71,6 @@ void QF_init(void) {
*/
InitializeCriticalSection(&l_startupCritSect);
EnterCriticalSection(&l_startupCritSect);
/* clear the internal QF variables, so that the framework can (re)start
* correctly even if the startup code is not called to clear the
* uninitialized data (as is required by the C Standard).
*/
QF_maxPool_ = 0U;
QF_bzero(&QF_timeEvtHead_[0], sizeof(QF_timeEvtHead_));
QF_bzero(&QF_active_[0], sizeof(QF_active_));
}
/****************************************************************************/
void QF_enterCriticalSection_(void) {

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -96,6 +96,12 @@ void QF_init(void) {
* system or for handling fatal errors that require shutting down
* (and possibly re-setting) the system.
*
*
* @attention
* After calling QF_stop() the application must terminate and cannot
* continue. In particular, QF_stop() is **not** intended to be followed
* by a call to QF_init() to "resurrect" the application.
*
* @sa QF_onCleanup()
*/
void QF_stop(void) {

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-03-03
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -54,6 +54,10 @@ uint8_t volatile QF_intNest;
/* QF functions ============================================================*/
void QF_init(void) {
/* Clear the internal QF variables, so that the framework can start
* correctly even if the startup code fails to clear the uninitialized
* data (as is required by the C Standard).
*/
QF_maxPool_ = 0U;
QF_subscrList_ = (QSubscrList *)0;
QF_maxPubSignal_ = 0;

View File

@ -6,7 +6,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -94,6 +94,11 @@ void QF_init(void) {
* system or for handling fatal errors that require shutting down
* (and possibly re-setting) the system.
*
* @attention
* After calling QF_stop() the application must terminate and cannot
* continue. In particular, QF_stop() is **not** intended to be followed
* by a call to QF_init() to "resurrect" the application.
*
* @sa QF_onCleanup()
*/
void QF_stop(void) {

View File

@ -5,7 +5,7 @@
* @cond
******************************************************************************
* Last updated for version 6.8.0
* Last updated on 2020-01-23
* Last updated on 2020-03-23
*
* Q u a n t u m L e a P s
* ------------------------
@ -105,6 +105,11 @@ void QF_init(void) {
* system or for handling fatal errors that require shutting down
* (and possibly re-setting) the system.
*
* @attention
* After calling QF_stop() the application must terminate and cannot
* continue. In particular, QF_stop() is **not** intended to be followed
* by a call to QF_init() to "resurrect" the application.
*
* @sa QF_onCleanup()
*/
void QF_stop(void) {