diff options
Diffstat (limited to 'docs/CE-status.txt')
-rw-r--r-- | docs/CE-status.txt | 904 |
1 files changed, 0 insertions, 904 deletions
diff --git a/docs/CE-status.txt b/docs/CE-status.txt deleted file mode 100644 index eb6ecb38dc5..00000000000 --- a/docs/CE-status.txt +++ /dev/null @@ -1,904 +0,0 @@ --*- mode: outline; outline-regexp: " *\\[" -*- - -This document presents the status of the ACE port to Windows CE. We -present hints on writing portable code using ACE on Windows CE and -other Win32 platforms. Moreover, we outline current unresolved -technical issues with the port and with Windows CE development tools. -Finally, we describe the status of all the ACE regression tests on -Windows CE. - -[Hints on writing portable code using ACE] - - [Testing Non-Window based ACE programs] - Rumor has it that Microsoft will provide a DOS shell in their - next release of CE. Oh well, I made it up and there'll probably - no DOS prompt in the future CE. All current ACE programs are - text-based. They all need a shell to start from. - - [Dialog Based] - This is a collection of files that combined with any ACE - program to run on CE. To use this template, compile your main - project with all the cpp and rc files under $ACE_ROOT/windoezCE/. - - The program will start by asking you the command line argument - that you want to pass to the original ACE program. We should be - able to get this infomation automatically if we execute the - program from "Start -> Run...". However, that'll require us to - implement this window using Win32 API (it's written with MFC - classes now.) Notice that GetCommandLine is not available on - CE. - - [Future Improvement] - - Get the command line argument automatically. - - Buffered keyboard input (stdin.) - - Scrollable output. - - [Unicode Trivia] - Since most APIs take wide char strings as their arguments when - strings are needed, some pre-cautions must be taken... - - Here are some macros that help converting string types back - and forth based on your platform settings. Here, under CE is - equivalent to have ACE_HAS_MOSTLY_UNICODE_APIS defined. - - [ASYS_TCHAR] Defined as wchar_t under CE, but as char under all - other paltforms. - - [ASYS_TEXT] A macro that converts a char text to a wchar text - only under CE. - - [ASYS_WIDE_STRING] A macro that converts char strings to wchar - strings using ACE_WString only when - ACE_HAS_MOSTLY_UNICODE_APIS is defined. - - [ASYS_MULTIBYTE_STRING] A macro that converts wchar strings to - char strings using ACE_WString while - ACE_HAS_MOSTLY_UNICODE_APIS is not defined but UNICODE is - defined. - - [ASYS_ONLY_MULTIBYTE_STRING] Like ASYS_MULTIBYTE_STRING but only - convert a string when ACE_HAS_MOSTLY_UNICODE_APIS defined and - UNICODE not defined. - - [ACE_TRACE] When using ACE_TRACE macros, you don't need to use - wide char string in it. ACE converts the char string to wchar - string for you. - -[Current difficulties] - - [Bugs in cross compiler for SH series CPU] - - [Inline functions] - are not supported at least for debug build for DLL. I have to - un-inline _all_ inline functions in ACE to get it to work. - Not sure if inlining works for Release version or other CPUs - (namely, MIPS series.) It appears to work fine for x86 - emulator builds. - - [Lost string literals] - The following format string in ACE_OS::ctime_r was - misteriously replaced with garbage by SH compiler: - - ACE_OS::sprintf (buf, __TEXT ("%3s %3s %02d %02d:%02d:%02d %04d\n"),..... - - The solution for this is to define the format string in global - namespace as: - - static const ASYS_TCHAR *fmtstr = __TEXT ("%3s %3s %02d %02d:%02d:%02d %04d\n"); - - And call the sprintf as: - - ACE_OS::sprintf (buf, fmtstr,....); - - There doesn't seem to be any recognizable pattern on how this - will happen (otherwise, I'll call this a feature.) - -[HPC issues] - The only testbed we have locally is an HP 360LX. Some tests that - use sockets must have the ethernet card installed in order to run - successfully. If you don't, the test will either hang or worse, - render the serial connection unusable. - - Sometimes, some programs will screw up the whole system - completely. Reset button is you best friend when this happens. - - -[CE Toolkit issues] - - [CE Toolkit] - Using CE toolkit for C++ is simply a pain in the ass. It takes - around 30 seconds to start up a debug session and 5+ seconds to - single step thru a statement. It only allows remote debugging - using the serial link but not the network. (BTW, currently, CE - only support NE2000 compatible PCMCIA ethernet card.) - - [SH3 compiler] - * The SH3 compiler does not generate string literals when they - are used inside a function and when a precompiled header is - also used. This problem can be seen when a variable inside a - function is defined by initializing it to a string literal. Two - solutions are available: - - - Use a global variable, if you want to initialize it to a - string literal, or - - Do not use precompiled headers if you initialize a - variable, defined inside a function, with a string - literal. - - * The SH3 compiler generates a fatal internal error, when - __declspec(dllimport) is used for a class with a virtual - function in it. To avoid the internal error, change the - imported class to not use any virtual functions. - - -[Tidbits] - - [Web resources] - - http://www.sockets.com/ws_wince.htm - - [FILETIME] - - Win32's FILETIME format can be converted to struct timeval thru a - simple conversion. However, the tricky part here is, FILETIME is - the total 100ns elapse since _1601_ (why the heck did Microsoft - choose this time?) whereas POSIX timeval gives you the - accumulated time in us since 1970. This leads to data overflow - in timeval struture which ACE uses internally for its - ACE_Time_Value. This also confuses ACE_OS::ctime, which, under - CE, is a home-brewed implementation, and corrupt the whole - program image. I don't know of a way to deal with this yet - except adjusting for the time difference between the two - everytime a conversion is necessary. This, of course, doesn't - seem to be a good choice. - - - -[Status of one-button tests] - - [Convention of project files settings] - - Procedures: - - * Create a new "Win32 Application" project file. It should - support the following platforms: WCE x86em, WCE MIPS, and WCE - SH3. Notice the project location should Be under - $ACE_ROOT/tests/WinCE. - - * Add the cpp file(s) along with all .cpp and .rc files under - $ACE_ROOT/WindozeCE. - - * Open Project settings. - - * General Settings are: - "Using MFC in a Shared DLL" for all platforms. - Both "Intermediate files" and "Output files" should be the - same path. They should be one of "x86emDbg", "WMIPSDbg", and - "WCESHDbg" depend on the target platform. - - * "C/C++" Settings: - Add "ACE_HAS_DLL=1", "ACE_HAS_WINCE" to preprocessor - definitions for all target platforms. - Set "Code Generation" -> "Use run-time library" to "Debug - Multithreaded". - Add to "Preprocessor" -> "Additional include directories" the - following: "..\,..\..\,..\..\WindozeCE\". - - * "Link" Settings: - Added "aced.lib" into "Input" -> "Object/library modules". - Set "Input" -> "Additional library path" according to the - target platform. It should one of the following: - "..\..\ace\WCE\x86em", - "..\..\ace\WCE\MIPS", or, - "..\..\ace\WCE\SH". - - * You are all done. - - [Legend:] - X - test working properly - F - compile but doesn't work correctly. - C - compilation trouble - . - work pending (deferred) - N - Not supported by CE - - For each test, Section [EM] describes the status of the test - on x86 emulator. Section [SH] describes the status of the - test under SH series machines. (I use an HP 360LX as my - testbed.) [MIPS] information is unavailable at the moment. - - [N] Aio_Platform_Test - Asynch I/O is not supported on CE. - [X] Atomic_Op_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Barrier_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Basic_Types_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Buffer_Stream_Test - [EM] Runs successfully - [SH] Runs successfully - [F] Conn_Test - [EM] Runs successfully - [SH] Hangs at halfway. (Can't have two server threads - running at the same time.) - I managed the test to run to completion when setting n_server = 1 and - n_client = 4. But I don't think that considered a successful run. - [X] Enum_Interfaces_Test - Sort of working right. - [EM] Report get_ip_interface error - [SH] Report get_ip_interface error - [N] Env_Value_Test - [X] Future_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Handle_Set_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Hash_Map_Manager_Test - [EM] Runs successfully - [SH] Runs successfully - [N] IOStream_Test - ??? - [N] MM_Shared_Memory_Test - ??? - [X] MT_SOCK_Test - This one takes some time.....zzzzz..... - [EM] Runs successfully - [SH] Runs if client threads reduced to 5. - (And I reverted my change back, so it won't runs on our - HP 360LX.) - [X] Map_Manager_Test - [EM] Runs successfully - [SH] Runs successfully - [F] Mem_Map_Test - [EM] - [SH] - [X] Message_Block_Test - inline functions in auto-generated ctors. - [EM] Runs successfully - [SH] Runs successfully - [F] Message_Queue_Notifications_Test - Hang at termination. - [EM] Runs successfully - [SH] There appears to be more compiler bugs that affect -this test. The notify pipe used by the reactor was not set to -non-blocking mode and thus the test hang at termination. I was not -able to set any break points into places I wanted. CE sucks. - [X] Message_Queue_Test - [EM] Runs successfully - [SH] Runs successfully - [.] Naming_Test - Registry is not added into CE yet. - [F] Notify_Performance_Test - [EM] Runs successfully - [SH] ??? - [X] OrdMultiSet_Test - [EM] Runs successfully - [SH] Runs successfully - [N] Pipe_Test - This test will have to rewriten in ACE. - [X] Priority_Buffer_Test - [EM] Runs successfully - [SH] Runs successfully - [N] Priority_Reactor_Test - Not supported yet. - [X] Priority_Task_Test - [EM] Runs successfully - [SH] Runs successfully - [N] Process_Mutex_Test - Don't know how to start a process as a console application. - [N] Process_Strategy_Test - Let's skip process related tests for now. - [N] Reactor_Exceptions_Test - Exceptions are not support on CE. - [F] Reactor_Notify_Test - Hang at "starting limited notifications test." - [EM] Runs successfully - [SH] ??? - [F] Reactor_Performance_Test - [EM] Runs successfully - [SH] ??? - [X] Reactor_Timer_Test - [EM] Runs successfully - [SH] Runs successfully - [F] Reactors_Test - Hang after done_count reaches 0. Reactors were not shutting down. - [EM] ??? - [SH] - [X] Reader_Writer_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Recursive_Mutex_Test - The test succeeded after reducing the iteration from 100 to - 50. It appears that windows' CEdit buffer overflowed from - the exccessive amount of output from this test. - [EM] Runs successfully - [SH] Runs successfully - [X] SOCK_Connector_Test - [EM] Runs successfully - [SH] Runs successfully - [X] SOCK_Test - [EM] Runs successfully - [SH] Runs successfully - [N] SPIPE_Test - SPIPE is not supported yet. - [X] SString_Test - [EM] Runs successfully - [SH] Runs successfully - [N] SV_Shared_Memory_Test - [X] Semaphore_Test - [EM] Runs successfully - [SH] Runs successfully - [.] Service_Config_Test - I don't have confidence on this test.... - [X] Sigset_Ops_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Simple_Message_Block_Test - [EM] Runs successfully - [SH] Runs successfully - [X] TSS_Test - TlsGetValue appearently acts differently from most Win32 - platforms. If we check the return value and the error - code, then, ACE_OS::key_getspecific will never succeed. - [EM] Runs successfully - [SH] Runs successfully - [X] Task_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Thread_Manager_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Thread_Mutex_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Thread_Pool_Test - [EM] Runs successfully - [SH] Runs successfully - [.] Time_Service_Test - [X] Time_Value_Test - [EM] Runs successfully - [SH] Runs successfully - [X] Timer_Queue_Test - [EM] Runs successfully - [SH] Runs successfully - [.] Tokens_Test - [N] UPIPE_SAP_Test - - -[ACE File list] - Here is a trace of ACE files about their status on CE. - [Legend] - (.) Defered. - (x) Compiled successfully. (Doesn't mean it will run. ;-) - (@) Not compile yet. - (T) Template codes. - (N) Not planning to support - ( ) ??? - - [ACE] - [CORBA] - (.) CORBA_Handler.cpp - (.) CORBA_Handler.h - (.) CORBA_Handler.i - (.) CORBA_Ref.cpp - (.) CORBA_Ref.h - (.) CORBA_Ref.i - [Collections] - (x) Array.cpp - (x) Array.h - (x) Array.i - (T) Containers.cpp - (T) Containers.i - (T) Containers.h - (T) Hash_Map_Manager.cpp - (T) Hash_Map_Manager.h - (T) Filecache.cpp - (T) Filecache.h - (T) Free_List.cpp - (T) Free_List.i - (T) Free_List.h - (T) Managed_Object.cpp - (T) Managed_Object.h - (T) Managed_Object.i - (T) Map_Manager.cpp - (T) Map_Manager.h - (T) Map_Manager.i - (x) Object_Manager.cpp - (x) Object_Manager.i - (x) Object_Manager.h - (x) SString.cpp - (x) SString.h - (x) SString.i - [Concurrency] - (x) Activation_Queue.h - (x) Activation_Queue.cpp - (x) Atomic_Op.i - (.) Future.h - (.) Future.cpp - (x) Method_Object.h - (x) Method_Object.cpp - (x) Process.cpp - (x) Process.h - (x) Process.i - (x) Process_Manager.cpp - (x) Process_Manager.h - (x) Process_Manager.i - (x) Sched_Params.cpp - (x) Sched_Params.h - (x) Sched_Params.i - (x) Synch.cpp - (x) Synch.h - (x) Synch.i - (x) Synch_Options.cpp - (x) Synch_Options.h - (x) Synch_Options.i - (T) Synch_T.cpp - (T) Synch_T.h - (T) Synch_T.i - (x) Thread.cpp - (x) Thread.h - (x) Thread.i - (x) Thread_Manager.cpp - (x) Thread_Manager.h - (x) Thread_Manager.i - (x) Token.cpp - (x) Token.h - (x) Token.i - [Config] - (x) config.h - (x) Basic_Types.cpp - (x) Basic_Types.h - (x) Basic_Types.i - (x) Version.h - [Connection] - (T) Acceptor.cpp - (T) Acceptor.h - (T) Acceptor.i - (.) Asynch_Acceptor.cpp - (.) Asynch_Acceptor.h - (.) Asynch_Acceptor.i - (x) Asynch_IO.cpp - (x) Asynch_IO.h - (x) Asynch_IO.i - (T) Connector.cpp - (T) Connector.h - (T) Connector.i - (T) Dynamic_Service.cpp - (T) Dynamic_Service.h - (T) Dynamic_Service.i - (x) Strategies.cpp - (x) Strategies.h - (x) Strategies.i - (T) Strategies_T.cpp - (T) Strategies_T.h - (T) Strategies_T.i - (T) Svc_Handler.cpp - (T) Svc_Handler.h - (T) Svc_Handler.i - [IPC] - [IO_SAP] - (x) IO_SAP.cpp - (x) IO_SAP.h - (x) IO_SAP.i - [DEV_SAP] - (N) DEV.cpp - (N) DEV.h - (N) DEV.i - (N) DEV_Connector.cpp - (N) DEV_Connector.h - (N) DEV_Connector.i - (N) DEV_IO.cpp - (N) DEV_IO.h - (N) DEV_IO.i - (N) TTY_IO.cpp - (N) TTY_IO.h - [FILE_SAP] - (.) FILE.cpp - (.) FILE.h - (.) FILE.i - (.) FILE_Connector.cpp - (.) FILE_Connector.h - (.) FILE_Connector.i - (.) FILE_IO.cpp - (.) FILE_IO.h - (.) FILE_IO.i - [IPC_SAP] - (x) IPC_SAP.cpp - (x) IPC_SAP.h - (x) IPC_SAP.i - [Addr] - (x) Addr.cpp - (x) Addr.h - (x) Addr.i - (N) DEV_Addr.cpp - (N) DEV_Addr.h - (N) DEV_Addr.i - (.) FILE_Addr.cpp - (.) FILE_Addr.h - (.) FILE_Addr.i - (x) INET_Addr.cpp - (x) INET_Addr.h - (x) INET_Addr.i - (.) SPIPE_Addr.cpp - (.) SPIPE_Addr.h - (.) SPIPE_Addr.i - (N) UNIX_Addr.cpp - (N) UNIX_Addr.h - (N) UNIX_Addr.i - (.) UPIPE_Addr.h - [FIFO_SAP] - (.) FIFO.cpp - (.) FIFO.h - (.) FIFO.i - (.) FIFO_Recv.cpp - (.) FIFO_Recv.h - (.) FIFO_Recv.i - (.) FIFO_Recv_Msg.cpp - (.) FIFO_Recv_Msg.h - (.) FIFO_Recv_Msg.i - (.) FIFO_Send.cpp - (.) FIFO_Send.h - (.) FIFO_Send.i - (.) FIFO_Send_Msg.cpp - (.) FIFO_Send_Msg.h - (.) FIFO_Send_Msg.i - [SOCK_SAP] - ( ) LOCK_SOCK_Acceptor.cpp - ( ) LOCK_SOCK_Acceptor.h - ( ) LSOCK.cpp - ( ) LSOCK.h - ( ) LSOCK.i - ( ) LSOCK_Acceptor.cpp - ( ) LSOCK_Acceptor.h - ( ) LSOCK_Acceptor.i - ( ) LSOCK_CODgram.cpp - ( ) LSOCK_CODgram.h - ( ) LSOCK_CODgram.i - ( ) LSOCK_Connector.cpp - ( ) LSOCK_Connector.h - ( ) LSOCK_Connector.i - ( ) LSOCK_Dgram.cpp - ( ) LSOCK_Dgram.h - ( ) LSOCK_Dgram.i - ( ) LSOCK_Stream.cpp - ( ) LSOCK_Stream.h - ( ) LSOCK_Stream.i - (x) SOCK.cpp - (x) SOCK.h - (x) SOCK.i - (x) SOCK_Acceptor.cpp - (x) SOCK_Acceptor.h - (x) SOCK_Acceptor.i - (x) SOCK_CODgram.cpp - (x) SOCK_CODgram.h - (x) SOCK_CODgram.i - (x) SOCK_Connector.cpp - (x) SOCK_Connector.h - (x) SOCK_Connector.i - (x) SOCK_Dgram.cpp - (x) SOCK_Dgram.h - (x) SOCK_Dgram.i - (x) SOCK_Dgram_Bcast.cpp - (x) SOCK_Dgram_Bcast.h - (x) SOCK_Dgram_Bcast.i - (x) SOCK_Dgram_Mcast.cpp - (x) SOCK_Dgram_Mcast.h - (x) SOCK_Dgram_Mcast.i - (x) SOCK_IO.cpp - (x) SOCK_IO.h - (x) SOCK_IO.i - (x) SOCK_Stream.cpp - (x) SOCK_Stream.h - (x) SOCK_Stream.i - [SPIPE_SAP] - (.) SPIPE.cpp - (.) SPIPE.h - (.) SPIPE.i - (.) SPIPE_Acceptor.cpp - (.) SPIPE_Acceptor.h - (.) SPIPE_Acceptor.i - (.) SPIPE_Connector.cpp - (.) SPIPE_Connector.h - (.) SPIPE_Connector.i - (.) SPIPE_Stream.cpp - (.) SPIPE_Stream.h - (.) SPIPE_Stream.i - [TLI_SAP] - (N) TLI.cpp - (N) TLI.h - (N) TLI.i - (N) TLI_Acceptor.cpp - (N) TLI_Acceptor.h - (N) TLI_Acceptor.i - (N) TLI_Connector.cpp - (N) TLI_Connector.h - (N) TLI_Connector.i - (N) TLI_Stream.cpp - (N) TLI_Stream.h - (N) TLI_Stream.i - [UPIPE_SAP] - (N) UPIPE_Acceptor.cpp - (N) UPIPE_Acceptor.h - (N) UPIPE_Acceptor.i - (N) UPIPE_Connector.cpp - (N) UPIPE_Connector.h - (N) UPIPE_Connector.i - (N) UPIPE_Stream.cpp - (N) UPIPE_Stream.h - (N) UPIPE_Stream.i - [Utils] - (N) IOStream.cpp // CE doesn't have iostream stuff - (N) IOStream.h - (N) IOStream_T.cpp - (N) IOStream_T.h - (N) IOStream_T.i - (x) Pipe.cpp - (x) Pipe.h - (x) Pipe.i - (x) Signal.cpp - (x) Signal.h - (x) Signal.i - [Logging and Tracing] - (x) Dump.cpp - (x) Dump.h - (x) Dump_T.cpp - (T) Dump_T.h - (T) Log_Msg.cpp - (x) Log_Msg.h - (x) Log_Msg.i - (x) Log_Priority.h - (x) Log_Record.cpp - (x) Log_Record.h - (x) Log_Record.i - (x) Trace.cpp - (x) Trace.h - (x) Trace.i - [Memory] - [Mem_Map] - (x) Mem_Map.cpp - (x) Mem_Map.h - (x) Mem_Map.i - [Shared_Malloc] - (x) Malloc.cpp - (x_) Malloc.h - (x) Malloc.i - (T) Malloc_T.cpp - (T) Malloc_T.h - (T) Malloc_T.i - (x) Memory_Pool.cpp - (x_) Memory_Pool.h - (x) Memory_Pool.i - [Shared_Memory] - ( ) Shared_Memory.h - ( ) Shared_Memory_MM.cpp - ( ) Shared_Memory_MM.h - ( ) Shared_Memory_MM.i - ( ) Shared_Memory_SV.cpp - ( ) Shared_Memory_SV.h - ( ) Shared_Memory_SV.i - [Utils] - (x) Obstack.cpp - (x) Obstack.h - (@) Read_Buffer.cpp - (@) Read_Buffer.h - (@) Read_Buffer.i - [Misc] - (x) ARGV.cpp - (x) ARGV.h - (x) ARGV.i - (T) Auto_Ptr.cpp - (T) Auto_Ptr.h - (T) Auto_Ptr.i - (x) Dynamic.cpp - (x) Dynamic.h - (x) Dynamic.i - (x) Get_Opt.cpp - (x) Get_Opt.h - (x) Get_Opt.i - (.) Registry.cpp - (.) Registry.h - (T) Singleton.cpp - (T) Singleton.h - (T) Singleton.i - (x) System_Time.cpp - (x) System_Time.h - [Name_Service] - (.) Local_Name_Space.cpp - (.) Local_Name_Space.h - (.) Local_Name_Space_T.cpp - (.) Local_Name_Space_T.h - (.) Name_Options.cpp - (.) Name_Options.h - (.) Name_Proxy.cpp - (.) Name_Proxy.h - (.) Name_Request_Reply.cpp - (.) Name_Request_Reply.h - (.) Name_Space.cpp - (.) Name_Space.h - (.) Naming_Context.cpp - (.) Naming_Context.h - (.) Registry_Name_Space.cpp - (.) Registry_Name_Space.h - (.) Remote_Name_Space.cpp - (.) Remote_Name_Space.h - [OS Adapters] - (x) ACE.cpp - (x) ACE.h - (x) ACE.i - (x) OS.cpp - (x) OS.h - (x) OS.i - [Reactor] - (x) Event_Handler.cpp - (x) Event_Handler.h - (x) Event_Handler.i - (T) Event_Handler_T.cpp - (T) Event_Handler_T.h - (T) Event_Handler_T.i - (x) Handle_Set.cpp - (x) Handle_Set.h - (x) Handle_Set.i - ( ) Priority_Reactor.cpp - ( ) Priority_Reactor.i - ( ) Priority_Reactor.h - ( ) Proactor.h - ( ) Proactor.i - ( ) Proactor.cpp - (x) Reactor.cpp - (x) Reactor.h - (x) Reactor.i - (x) Reactor_Impl.h - (x) Select_Reactor.cpp - (x) Select_Reactor.h - (x) Select_Reactor.i - (@) WFMO_Reactor.cpp - (@) WFMO_Reactor.h - (@) WFMO_Reactor.i - (x) XtReactor.cpp - (x) XtReactor.h - [Service_Configurator] - (x) Parse_Node.cpp - (x) Parse_Node.h - (x) Parse_Node.i - (x) Service_Config.cpp - (x) Service_Config.h - (x) Service_Config.i - (x) Service_Manager.cpp - (x) Service_Manager.h - (x) Service_Manager.i - (x) Service_Object.cpp - (x) Service_Object.h - (x) Service_Object.i - (x) Service_Repository.cpp - (x) Service_Repository.h - (x) Service_Repository.i - (x) Service_Types.cpp - (x) Service_Types.i - (x) Service_Types.h - (x) Shared_Object.cpp - (x) Shared_Object.h - (x) Shared_Object.i - (x) Svc_Conf.h - (x) Svc_Conf_l.cpp - (x) Svc_Conf_y.cpp - [Streams] - (x) IO_Cntl_Msg.cpp - (x_) IO_Cntl_Msg.h - (x) IO_Cntl_Msg.i - (x) Message_Block.cpp - (x) Message_Block.h - (x) Message_Block.i - (T) Message_Queue.cpp - (T) Message_Queue.h - (T) Message_Queue.i - (T) Module.cpp - (T) Module.h - (T) Module.i - (.) Multiplexor.cpp - (.) Multiplexor.h - (.) Multiplexor.i - (T) Stream.cpp - (T) Stream.h - (T) Stream.i - (T) Stream_Modules.cpp - (T) Stream_Modules.h - (T) Stream_Modules.i - (x) Task.cpp - (x) Task.h - (x) Task.i - (T) Task_T.cpp - (T) Task_T.h - (T) Task_T.i - [System_V_IPC] - [System_V_Message_Queues] - ( ) SV_Message.cpp - ( ) SV_Message.h - ( ) SV_Message.i - ( ) SV_Message_Queue.cpp - ( ) SV_Message_Queue.h - ( ) SV_Message_Queue.i - ( ) Typed_SV_Message.cpp - ( ) Typed_SV_Message.h - ( ) Typed_SV_Message.i - ( ) Typed_SV_Message_Queue.cpp - ( ) Typed_SV_Message_Queue.h - ( ) Typed_SV_Message_Queue.i - [System_V_Semaphores] - ( ) SV_Semaphore_Complex.cpp - ( ) SV_Semaphore_Complex.h - ( ) SV_Semaphore_Complex.i - ( ) SV_Semaphore_Simple.cpp - ( ) SV_Semaphore_Simple.h - ( ) SV_Semaphore_Simple.i - [System_V_Shared_Memory] - ( ) SV_Shared_Memory.cpp - ( ) SV_Shared_Memory.h - ( ) SV_Shared_Memory.i - [Timers] - - (x) High_Res_Timer.cpp - (x) High_Res_Timer.h - (x) High_Res_Timer.i - (x) Profile_Timer.cpp - (x) Profile_Timer.h - (x) Profile_Timer.i - (.) Time_Request_Reply.cpp - (.) Time_Request_Reply.h - (x) Time_Value.h - (x) Timer_Hash.cpp - (x) Timer_Hash.h - (T) Timer_Hash_T.cpp - (T) Timer_Hash_T.h - (x) Timer_Heap.cpp - (x) Timer_Heap.h - (x) Timer_Heap.i - (T) Timer_Heap_T.cpp - (T) Timer_Heap_T.h - (T) Timer_Heap_T.i - (x) Timer_List.cpp - (x) Timer_List.h - (x) Timer_List.i - (T) Timer_List_T.cpp - (T) Timer_List_T.h - (T) Timer_List_T.i - (x) Timer_Queue.cpp - (x) Timer_Queue.h - (x) Timer_Queue.i - (T) Timer_Queue_Adapters.cpp - (T) Timer_Queue_Adapters.h - (T) Timer_Queue_Adapters.i - (T) Timer_Queue_T.cpp - (T) Timer_Queue_T.h - (T) Timer_Queue_T.i - (x) Timer_Wheel.cpp - (x) Timer_Wheel.h - (x) Timer_Wheel.i - (T) Timer_Wheel_T.cpp - (T) Timer_Wheel_T.h - (T) Timer_Wheel_T.i - [Token_Service] - (x) Local_Tokens.cpp - (x) Local_Tokens.h - (x) Local_Tokens.i - (.) Remote_Tokens.cpp - (.) Remote_Tokens.h - (.) Remote_Tokens.i - (.) Token_Collection.cpp - (.) Token_Collection.h - (.) Token_Collection.i - (x) Token_Manager.cpp - (x) Token_Manager.h - (x) Token_Manager.i - (.) Token_Request_Reply.cpp - (.) Token_Request_Reply.h - (.) Token_Request_Reply.i - (.) Token_Invariants.h - (.) Token_Invariants.i - (.) Token_Invariants.cpp |