git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@173 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
gdisirio 2008-01-10 13:52:44 +00:00
parent 82054b1941
commit c7b67cff0e
5 changed files with 15 additions and 18 deletions

View File

@ -4,7 +4,7 @@
# Project related configuration options # Project related configuration options
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
PROJECT_NAME = ChibiOS/RT PROJECT_NAME = ChibiOS/RT
PROJECT_NUMBER = "0.5.1 beta" PROJECT_NUMBER = "0.5.2 beta"
OUTPUT_DIRECTORY = . OUTPUT_DIRECTORY = .
CREATE_SUBDIRS = NO CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English OUTPUT_LANGUAGE = English

View File

@ -13,7 +13,7 @@ Homepage</h2>
</tr> </tr>
<tr> <tr>
<td style="text-align: center; vertical-align: top; width: 150px;">Current <td style="text-align: center; vertical-align: top; width: 150px;">Current
Version 0.5.1<br> Version 0.5.2<br>
-<br> -<br>
<a href="http://sourceforge.net/projects/chibios/" rel="me" target="_top">Project on SourceForge</a><br> <a href="http://sourceforge.net/projects/chibios/" rel="me" target="_top">Project on SourceForge</a><br>
<a href="html/index.html" target="_top" rel="me">Documentation</a><br> <a href="html/index.html" target="_top" rel="me">Documentation</a><br>

View File

@ -39,6 +39,10 @@ AVR-AT90CANx-GCC - Port on AVR AT90CAN128, not complete yet.
*** Releases *** *** Releases ***
***************************************************************************** *****************************************************************************
*** 0.5.2 ***
- Small reordering in the fields of the Thread structure in order to optimize
the space when messages are not used.
*** 0.5.1 *** *** 0.5.1 ***
- NEW: Priority enqueing for messages can be optionally enabled by specifying - NEW: Priority enqueing for messages can be optionally enabled by specifying
the P_MSGBYPRIO option when creating a message server thread. the P_MSGBYPRIO option when creating a message server thread.

View File

@ -62,13 +62,11 @@ void chSchReadyI(Thread *tp, t_msg msg) {
tp->p_state = PRREADY; tp->p_state = PRREADY;
tp->p_rdymsg = msg; tp->p_rdymsg = msg;
// prio_insert(tp, &rlist.r_queue);
while (cp->p_prio >= tp->p_prio) while (cp->p_prio >= tp->p_prio)
cp = cp->p_next; cp = cp->p_next;
/* Insertion on p_prev.*/ /* Insertion on p_prev.*/
tp->p_prev = (tp->p_next = cp)->p_prev; tp->p_prev = (tp->p_next = cp)->p_prev;
tp->p_prev->p_next = cp->p_prev = tp; tp->p_prev->p_next = cp->p_prev = tp;
} }
/** /**

View File

@ -53,10 +53,10 @@ struct Thread {
* thread in the system. * thread in the system.
*/ */
union { union {
#ifdef CH_USE_TRACE /** Thread wakeup code (only valid when exiting the \p PRREADY state).*/
/** Kernel object where the thread is waiting on.*/ t_msg p_rdymsg;
void *p_wtobjp; /** The thread exit code (only while in \p PREXIT state).*/
#endif t_msg p_exitcode;
#ifdef CH_USE_SEMAPHORES #ifdef CH_USE_SEMAPHORES
/** Semaphore where the thread is waiting on (only in \p PRWTSEM state).*/ /** Semaphore where the thread is waiting on (only in \p PRWTSEM state).*/
Semaphore *p_wtsemp; Semaphore *p_wtsemp;
@ -69,20 +69,14 @@ struct Thread {
/** Destination thread for message send (only in \p PRSNDMSG state).*/ /** Destination thread for message send (only in \p PRSNDMSG state).*/
Thread *p_wtthdp; Thread *p_wtthdp;
#endif #endif
};
union {
/** Thread wakeup code, normally set to \p RDY_OK by the \p chSchReadyI()
* (only while in \p PRREADY state).*/
t_msg p_rdymsg;
/** The thread exit code (only while in \p PREXIT state).*/
t_msg p_exitcode;
#ifdef CH_USE_EVENTS #ifdef CH_USE_EVENTS
/** Enabled events mask (only while in \p PRWTEVENT state).*/ /** Enabled events mask (only while in \p PRWTEVENT state).*/
t_eventmask p_ewmask; t_eventmask p_ewmask;
#endif #endif
#ifdef CH_USE_MESSAGES #ifdef CH_USE_TRACE
/** Message (only while in \p PRSNDMSG state).*/ /** Kernel object where the thread is waiting on. It is only valid when
t_msg p_msg; the thread is some sleeping states.*/
void *p_wtobjp;
#endif #endif
}; };
/** Machine dependent processor context.*/ /** Machine dependent processor context.*/
@ -100,6 +94,7 @@ struct Thread {
#endif #endif
#ifdef CH_USE_MESSAGES #ifdef CH_USE_MESSAGES
ThreadsQueue p_msgqueue; ThreadsQueue p_msgqueue;
t_msg p_msg;
#endif #endif
#ifdef CH_USE_EVENTS #ifdef CH_USE_EVENTS
/** Pending events mask.*/ /** Pending events mask.*/