在13.4节中,出错记录与精灵进程有关的一个问题是如何处理出错消息。因为精灵进程没有控制终端,所以不能只是写到标准出错输出上。在很多工作站上,控制台设备运行一个窗口系统,所以我们不希望所有精灵进程都写到控制台设备上。我们也不希望每个精灵进程将它自己的出错消息写到一个单独的文件中。对系统管理人员而言,如果要关心哪一个精灵进程写到哪一个记录文件中,并定期地检查这些文件,那么一定会使他感到头痛。所以,需要有一个集中的精灵进程出错记录设施。

伯克利开发了BSD syslog设施,并广泛应用于4.2 BSD。从4.x BSD导出的很多系统都支持syslog。关于syslog的详细介绍,可以参考《UNIX环境高级编程13精灵进程》中的内容。系统V中从来没有一个集中的精灵进程记录设施。SVR4支持BSD风格的syslog设施,SVR4之下的inetd精灵进程使用syslog。在SVR中,syslog的基础是/dev/log流设备驱动程序,下一节将对此进行说明。对于进一步了解BSD Unix Toolbox,请访问《BSD.UNIX.Toolbox.2008》。如果对Unix进程通信感兴趣,可以查阅《Unix进程间通信》。