HOW PCYNLITX PRODUCES APPLICATION-SPECIFIC LIBRARY
Before the library construction process, Pcynlitx collects information about the context of the program from the programmer by means of a descriptor file. From a different perspective, descriptor file can be considered as a contract which is signed between the Pcynlitx and the programmer before the library construction process. In practice, the programmer enters a list of information into the descriptor file by means of the menus of the GUI and Pcynlitx reads that file.
Figure: How Pcynlitx builds application specific thread library
HOW PCYNLITX PROVIDES CYBERNETIC THREAD MANAGEMENT
Pcynlitx platform produces C++ classes and the instances of these classes manage the threads cybernetically. In fact, the classes produced have standart design patterns and properties. The programmers only determine the quantities of these properties and performes declarations to the pcynlitx such as indicated above. In this project, the instances of these classes are named as cybernetic control objects. The cybernetic control object are designed with memory and they can hold status information coming from the threads. More specifically, they can receive feedback from the operation that are performed on the process. After each operation that is performed on the software, the cybernetic control objects update their information. A typical illustration of the cybernetic thread management system has been shown in below figure.
In pcynlitx applications, every operation which is related with thread management is performed over the member function of the cybernetic control object. The programmer's directives are recived over the member functipons of the cybernetic control objects. Therefore, the cybernetic control objects can receive information by means of both the programmer and the system programming functions that are provided by the operating system. Then, based on the information collected, the decision about the flow of the threads are taken by the cybernetic control objects. However, this decision is taken on the inside of the cybernetic objects member functions. The threads are blocked or the cybernetic thread contol system allows the threads to continue their executions.