В конце 1980-х годов начали проявляться негативные последствия имеющегося широкого разнообразия доступных реализаций UNIX. Одни реализации основывались на BSD, в то время как другие были созданы на основе System V, а у третьих функционал был позаимствован из обоих вариантов. Кроме того, каждый коммерческий распространитель добавлял к своей собственной реализации дополнительные функции. Все это привело к постепенному усложнению портирования программных продуктов и перехода людей с одной реализации UNIX на другую. Эта ситуация показала, что требовалась стандартизация языка программирования С и системы UNIX, чтобы упростить портирование приложений с одной системы на другую. Рассмотрим выработанные в итоге стандарты.