The UCI protocol as publiced by Stefan-Meyer Kahlen (ShredderChess):
-
The specification is independent of the operating system. For Windows, the engine is a normal exe file, either a console or "real" windows application.
-
all communication is done via standard input and output with text commands,