Currently, I'm interresting on ChibiOS test suite, and to make a test under my linux computer, I have try the following demos:
/demos/various/RT-Posix-Simulator
Because of the usage of 32bits while compiling on my 64bits, as shows on line 8 of the makefile (USE_OPT = -O2 -ggdb -m32).
I had this error during the compilation (fatal error: sys/cdefs.h: No such file or directory).
This error is solved by installing some packages: sudo apt-get install gcc-multilib g++-multilib
After the building, I then ran the command build/ch on one terminal. That gives me the two ports that can be used to connect on.
So on the other terminal i ran telnet localhost 29001 and test rt that gives me the following result:
Code: Select all
test rt
*** ChibiOS/RT Test Suite
***
*** Compiled: Dec 24 2017 - 00:58:21
*** Platform: Posix Simulator
============================================================================
=== Test Sequence 1 (Information)
----------------------------------------------------------------------------
--- Test Case 1.1 (Port Info)
--- Architecture: Simulator
--- Core Variant: x86 (integer only)
--- Compiler: GCC 5.4.0 20160609
--- Port Info: No preemption
--- Natural alignment: 4
--- Stack alignment: 16
--- Working area alignment: 16
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.2 (Kernel Info)
--- Product: ChibiOS/RT
--- Stable Flag: 0
--- Version String: 5.0.0
--- Major Number: 5
--- Minor Number: 0
--- Patch Number: 0
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.3 (Kernel Settings)
--- CH_CFG_ST_RESOLUTION: 32
--- CH_CFG_ST_FREQUENCY: 1000
--- CH_CFG_INTERVALS_SIZE: 32
--- CH_CFG_TIME_TYPES_SIZE: 32
--- CH_CFG_ST_TIMEDELTA: 0
--- CH_CFG_TIME_QUANTUM: 0
--- CH_CFG_MEMCORE_SIZE: 131072
--- CH_CFG_NO_IDLE_THREAD: 0
--- CH_CFG_OPTIMIZE_SPEED: 1
--- CH_CFG_USE_TM: 1
--- CH_CFG_USE_REGISTRY: 1
--- CH_CFG_USE_WAITEXIT: 1
--- CH_CFG_USE_SEMAPHORES: 1
--- CH_CFG_USE_SEMAPHORES_PRI: 0
--- CH_CFG_USE_MUTEXES: 1
--- CH_CFG_USE_MUTEXES_RECURS: 0
--- CH_CFG_USE_CONDVARS: 1
--- CH_CFG_USE_CONDVARS_TIMEO: 1
--- CH_CFG_USE_EVENTS: 1
--- CH_CFG_USE_EVENTS_TIMEOUT: 1
--- CH_CFG_USE_MESSAGES: 1
--- CH_CFG_USE_MESSAGES_PRI: 0
--- CH_CFG_USE_MAILBOXES: 1
--- CH_CFG_USE_MEMCORE: 1
--- CH_CFG_USE_HEAP: 1
--- CH_CFG_USE_MEMPOOLS: 1
--- CH_CFG_USE_OBJ_FIFOS: 1
--- CH_CFG_USE_DYNAMIC: 1
--- CH_CFG_USE_FACTORY: 1
--- CH_CFG_FACTORY_MAX_NAMES_LENGTH: 8
--- CH_CFG_FACTORY_OBJECTS_REGISTRY: 1
--- CH_CFG_FACTORY_GENERIC_BUFFERS: 1
--- CH_CFG_FACTORY_SEMAPHORES: 1
--- CH_CFG_FACTORY_MAILBOXES: 1
--- CH_CFG_FACTORY_OBJ_FIFOS: 1
--- CH_DBG_STATISTICS: 0
--- CH_DBG_SYSTEM_STATE_CHECK: 0
--- CH_DBG_ENABLE_CHECKS: 0
--- CH_DBG_ENABLE_ASSERTS: 0
--- CH_DBG_TRACE_MASK: 255
--- CH_DBG_TRACE_BUFFER_SIZE: 128
--- CH_DBG_ENABLE_STACK_CHECK: 0
--- CH_DBG_FILL_THREADS: 0
--- CH_DBG_THREADS_PROFILING: 0
--- Result: SUCCESS
============================================================================
=== Test Sequence 2 (System layer and port interface)
----------------------------------------------------------------------------
--- Test Case 2.1 (System integrity functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.2 (Critical zones functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.3 (Interrupts handling functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.4 (System Tick Counter functionality)
--- Result: SUCCESS
============================================================================
=== Test Sequence 3 (Threads Functionality)
----------------------------------------------------------------------------
--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
============================================================================
=== Test Sequence 4 (Suspend/Resume)
----------------------------------------------------------------------------
--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
============================================================================
=== Test Sequence 5 (Counter Semaphores)
----------------------------------------------------------------------------
--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
============================================================================
=== Test Sequence 6 (Mutexes, Condition Variables and Priority Inheritance)
----------------------------------------------------------------------------
--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
============================================================================
=== Test Sequence 7 (Synchronous Messages)
----------------------------------------------------------------------------
--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
============================================================================
=== Test Sequence 8 (Event Sources and Event Flags)
----------------------------------------------------------------------------
--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
============================================================================
=== Test Sequence 9 (Dynamic threads)
----------------------------------------------------------------------------
--- Test Case 9.1 (Threads creation from Memory Heap)
Connection closed by foreign host.
And on the other terminal, here is what we had: Init:
disconnection on SD1
Segmentation fault (core dumped)
For the moment this is just a report, I will try to resolver this error for next time.
Thanks.