What's the difference between Classic and Super Server?
Super Server is built as modern multi-client, multi-threaded servers like Apache. It's a single process which listens to incoming connections itself and starts a new thread for each client. All clients share a common metadata cache with makes operations faster and metadata change notifications instant. It uses less memory than Classic and is well suited for OLTP. The problem is when one user runs long-running query (reports for example), and hogs the system so much that short queries never get their turn.
If you face such problems, it's better to use Classic, which uses a single process per connection. Classic is supported on Linux since beginning and on Windows in newer Firebird versions. Classic uses inetd or xinetd to accept incoming connections (like FTP, Telnet, and similar other servers on Linux usually do), so make sure (x)inetd is installed and running if you have connection problem. Historically, Classic had less diagnostic tools as information about users and connection was not kept in the same process space. For example, if you query the number of connected users, you'll always get one (yourself) with Classic. Since user concurency is left for operating system to handle, it can run multiple heavy querys are still be responsive to new ones. Ideal for OLAP.
There is another good reason to use Classic: if you have a runaway process (like database backup) that cannot be stopped by other means than killing it, killing Classic process is harmless and easy, while killing the SuperServer takes down all the connections and transactions for all clients/users. If you use Firebird 2.1 or higher you can also cancel queries by deleting records from monitoring tables. Killing a Classic process is still faster that that (no need to connect to the server, inspect the monitoring tables to find what to stop), but the advantage is not that big anymore.