IO in Screws
============

Input/Output in Screws is differenced by three methods:
  - DirectIO
  - Buffered
  - Poll
  - Select

DirectIO:
  Is enabled using the "directio" directive on the configuration file.
  This IO method is insane and a little bit slow on low-ping connections,
  but is useful for debugging scripts and crashes.

  For example: this script will be sent in 3 packets:
  <#perl print " -FirstOne\n -SecondOne\n -LastOne\n"; #>

Buffered:
  Buffered IO is the fastest one, because, waits to the end of the exec
  process and when it's finished prints all the buffer. Try to use this
  method always as you can. To enable this method, just add the "nopoll"
  directive in the configuration file (if you have poll()).

  There's only one problem. This is a one-way IO. The communication goes
  from script to user-connection. Not in the other way. You cannot use
  PUT method in this IO mode.
  
Poll:
  This IO mode is enabled by default if your system have poll() function
  or if you have compiled with poll support. This method is the slowest
  one, but is the best. Because 'exec-script' and 'end-user' have a
  realtime IO communication.

  Using this method you can implement a PUT method, SHELL access, console
  CHAT, CONSOLE, etc. Just use your imagination ;)

Select:
  Like 'poll' but using select() syscall. Slower but more portable.
