I found this web archive that has a copy of my old blog which went down a year ago. All PCD documentation is available here:
http://web.archive.org/web/20140220080159/http://www.rt-embedded.com/blog/pcd-process-control-daemon/pcd-documentation/
This version includes a fix submitted by Albert (user mwopentv12), to address a race condition in the IPC library.
This release contains two changes:
- pcdapi.h file contains changes that allow to include it in C++ applications. Without this change, C++ applications fail to link with libpcd.so.
- In some cases, pcd thinks it was already running when it was not. This happened when other processes with names containing the substring "pcd" were already running in the system.
This release fixes a bug that causes the error "undefined reference
to `PCD_api_register_exception_handlers" when linking with pcdapi library. Release 1.1.3 is not usable and will be removed.
This version fixes some bugs and limitation in the ipc library:
- Fixed bug 3413714: PCD will now clean its resources when its terminated.
- Protect against multiple concurrent accesses to pcd_api from the same context (threads).
This release contains the following changes:
- Support for starting a process using a different user id other than pcd's. A new optional keyword has been added to the pcd script syntax:
USER = { uid ; username }
- Experimental support for vfork() system call instead of fork()
This is a major release with many updates:
- Using standard system types defined in sys/types.h.
- Updated STATUS to PCD_status_e and IPC_status_e respectively.
- Support crash-daemon only mode (no rule files, acts only as a crash daemon).
- Support x64 platforms (great for running pcd on your Linux PC development machine).
- pcd now kills all its children when terminating and daemonizing in the beginning (no need for running explicitly in the background with &).
This version tries to improve the PCD support for environment variables. It is now possible to concatenate values to environment variables in the PCD script (though not recursive and only one variable). For example, a command value can be:
COMMAND = insmod ${MODULES_PATH}/net/gigeth.ko
This new version replaces the register set which is displayed during a crash on MIPS platforms. The exception dump will now show registers 0-31. It is recommended to update your version if you are using PCD on MIPS.
This new version has some bug fixes and enhancements. It is recommended to update your version.
This new version has many bug fixes and enhancements. It is recommended to update your version.
New features:
Support Kconfig configuration option for PCD (Thanks to Abhaydev S for helping with his contribution).
New features:
- Support MIPS platform (Thanks to Metin Kaya).
- Option to use either static or shared libraries (Thanks to Andriy Tseghlitsky).
- Added SIGFPE (math error signal) to the PCD exception handler.
Checkout the PCD documentation and user guides at:
http://www.rt-embedded.com/blog/pcd-process-control-daemon/pcd-documentation/
Checkout the PCD documentation and user guides at:
http://www.rt-embedded.com/blog/pcd-process-control-daemon/pcd-documentation/
New features: Added X86 support (Thanks to Andriy Tseghlitsky)
Bug fixes: Removed Windows style CR/LF
PCD Version 1.0.2 has been released with 3 bug fixes.
Starting from today, the PCD Sources are available in the SVN. All project management will be done via SVN.