Кстати, я ещё не упомянул переменные окружения. Вещь, в принципе, нужная, например, она в Linux указывает графическим приложениям, на каком экране им запускаться, показывает ширину консоли для консольных приложений и т.п. (не говоря про общеизвестный путь поиска исполняемых приложений).