| Juphoon ZOS Operating System Service Platform |
| ZOS (Zero Operating System) is our operating service platform, providing standard abstract interface operations supporting multitudinous operating systems and making software independent from application environments as specific processors, compilers and operating systems. In addition, ZOS improves the system service functions. It provides task management, message queues, timer management, memory management, data buffer management, log management. It also abstracts many protocol-related service interfaces as ABNF, ASN.1 Codec Library. |
| ZOS Modules: |
|
| Description of ZOS Modules £º |
Memory Management
Data Buffer
Task Management
Message Queue
Timer Management
ABNF/ASN.1 Codec ABNF¡¢ASN.1(BER and PER)
XML Parser (Support SAX, DOM...)
Portable OS (Only need Thread/Semaphor/Mutex/Time/Socket/Heap interfaces of OS)
String/Time/List/... Library
Utility Functions |
| Supported OS of ZOS£º |
Windows (2000 / XP / CE)
Linux (Redhat, ArmLinux...)
VxWorks (2.0, 2.02, 2.2)
Solaris
ThreadX OS |
| Location of ZOS in A Real Product£º |
|
| Actually, the operating system may be Windows, Linux, Solaris, VxWorks, pSOS and etc.. |
| Technical Advantages of ZOS£º |
we consider two factors of technical advantages: First, how to ensure the integrity, the stability, the portability and other technical requirements of a product's architecture; Second, we focus on the vigorousness, high efficiency, extensibility, maintainability, management of the protocol system(including protocol stacks, protocol applicable programs and etc..) supported by a system platform. In addition, we considered carefully the flexibility of the modules inside or outside a system. This needs to be supported by excellent designs and quality of programming. |
An outstanding characteristic in technology is that we have high requirements in
standardization.
Firstly the requirements of our standards will be satisfied when designing protocols software and writing codes, then other aspects as exerting imagination will be considered.
|
| Architecture Designing in High Portability |
| Our system service platform supports many basic functions of an operating system, such as task management, memory management, buffer management, time management, timer management and etc.. It also provides many library functions fulfilled by ourselves, such as queues, string processing, timer management and other algorithms. All these codes are developed by ourselves. Furthermore the technologies related to portability have been abstracted to interfaces in various ways, even the operating system which ZOS is not supported yet, we can work successfully by being added some system invoking functions. |
| Using advanced layer model |
The ITU and ISO have designed a set of models of Open System Interconnection. and the protocol software layer model of Trillium was extracted from these models. After analyzing a lot of ITU's documents about OSI, we made a set of layer designing models applicable to all products (software and hardware) with our own technical experience. The applications of layer designing models, applied to all products, can ensure the high speed and quality of software development and complete concepts in software designing. |
| Unique Buffer Designing Mechanism |
The buffer model is designed to reduce the frequency of memory copying. At present, there are two famous Buffer models, mbuf (a 2 tires scheme, used in FreeBSD) and STREAMS (a 3 tires scheme). The Juphoon Dbuf (Data buffer) model is designed more efficient for protocol process, and it provides two different buffers for data and structure respectively.
The result of using Juphoon Dbuf is, there would be no real memory copy while data is passed between different protocol layers.
More... |
| Unique One-time Scanning Mechanism |
As part of a protocol application, Codec is very important for system performance. Usually, it costs about 40% to 60% of the CPU resource.
A typical way used by the ABNF parser is string comparison and parsing by group, scanning 2 or 3 times. Using Juphoon character set management mechanism, the ABNF parser needs to scan only once and thus makes the Codec efficiency 3 to 9 times higher than most of the third party protocol stacks.
More... |
| Safe & Efficient Memory Bucket |
Juphoon Memory Bucket, which features high performance and stable request, is designed for memory management, especially for that of an embedded system. The Bucket object can allocate memory blocks of different sizes to satisfy the requirements of upper applications and set magic data in the memory blocks to prevent invalid memory usage at software development phase. It can also prevent the underlying OS from allocating and freeing memory.
More... |
| Dump Stack |
Using Juphoon Dump Stack, the ABNF Parser can locate solecisms accurately to character, indicate the reasons and provide the process stacks used during the period of parsing. In the example on the right, dump reports that the solecism is the absence of the forward value. In addition, as an independent module, Juphoon Dump Stack can be applied to any other modules, such as dbuf, fsm, etc..
More... |
| Resource Garbage Bin |
Our platform has a garbage bin recycle mechanism to ensure the resources against leaking. There is no need for customers to worry about resources leak or invalid resources allocation.
Also, these resources can be memory, Dbufs of ZOS, memory buckets, file handles, socket handles and other handles.
More... |
| Multiplicate Timer Policies |
Generally, a system platform provides only one timer mechanism which can not satisfy different requirements of protocol stacks and scenarios in timer length and the quantity of timers. To meet these requirements, our platform provides manifold
timer mechanisms:
QTimer is a classified and liner timer which is applicable to signal protocols, serving the upper layers.
When the protocol stack needs a lot of timers, the RTimer will be triggered by the QTimer to meet the requirement.
RTimer is designed to satisfy the requirement of requesting a large amount of timers, for example, more than 20000 timers. The excellent RTimer can meet the demand of asking for lots of timers, keeping low occupancy of memory and CPU resource at the same time.
RTimer can be driven by other timers, such as QTimer or by the interrupts.
More... |
| Other Technical Advantages |
1. Trace the life circles of memory blocks in the memory pool; Check whether the memory overflowed or underflowed; Verify the memory modification and if it has been freed more than once.
2. Brick memory management, for system resource, abstracts the resource management and operations of user applications.
3. FSM and 3 dimensional table FSM have advantages over other state engines in common use.
4. C++ template is implementd in C language.
5.
The module queue management strengthens the concept of module hierarchy and the thread safety.
6. High encription, efficiency and high accuracy time stamp algorithm.
7. Protocol-independent call test engine.
8. Strict naming convention.
9. Various tools.
More... |
| For more detailed information about ZOS please read ZOS Operating System Service Platform Instruction Document which has been included in the Juphoon Software Manual. |
| |