Abstract
The use of printers is common in offices and campus environment but printers are mostly uncontrolled. Administrators can neither track the jobs printed nor manage printers in advanced method, such as charging for printing documents automatically. Additionally, the print servers nowadays are restricted on one kind of platform. In the thesis, we implement a .NET embedded print server, which can be executed on multiple operating systems with only one compilation. Our server is able to distinguish print jobs between different format of printer control languages, including HP PCL5, HP PCL6, Epson ESC/P, and Adobe PostScript. The server accepts and prints jobs through RFC 1179, LPD protocol. The information retrieved from print jobs and control files is useful for administration or for further use. We also did a comparison of sizes of jobs in different printer languages, and the performance of language parsers in embedded print server is evaluated on different platforms. This also proves that our server can run under Windows XP, Windows CE .NET, and Linux, which enables rapid development of software. Moreover, the information of jobs is revealed precisely.