Лимит на количество открытых файлов есть во всех операционных системах, в Windows в том числе. А нужен он потому, что на каждый открытый файл в специальной области памяти ядра операционной системы создаётся дескриптор. Область эта не безгранична и если её исчерпать, система может
высыпаться в корку. Никому не понравится операционка, которую можно завалить просто открывая файлы и не закрывая их.