из более менее адекватного варианта нашел пока только открывать ssh сессию, из которой открывать все файлы из папки через tile -f и читать выход от сессии, в моей версии solaris tilef почему то отсутствует.
inotify как таковой вообще ничего не умеет:) FAM и Gamin для Соляриса нету( Supervisord - logging its subprocess stdout and stderr output, не подходит т.к. приложение не пишет ничего в stdout, оно пишет только в файлы
к сожалению дружу только с C# :) c Си характерами не сошлись:) + сторонний софт ставить не позволят на боевой сервер, тут стандартными средствами придется)
данный вариант насколько я понял тоже не подходит т.к. если изменился файл который весит 4Гб он его целиком будет синхронизировать, то есть перекачивать все 4Гб, от такой синхронизации передавит весь канал связи:)
Если в задаче SQL нужен как бы для сетевой игры то самый простой способ создать приложение сервер которое будет обрабатывать запросы к карте от клиентов
Если по out of memory то просто проблемы с очисткой памяти повставляй в конце каждого цикла закачки 1 страницы GC.Collect() и скорее всего проблема исчезнет. Большое количество потоков не поможет, 10 - 15 максимум одновременно, больше есть шанс что начнут падать екзепшены в каком либо потоке и обработка каждого будет занимать много времени.