Что происходит при запуске экзешного файла?
Программа написана на C++.
Я так понимаю происходит следующее:
1.После двойного клика мышкой по исполняемому файлу происходит препроцессорная обработка.
2. Компиляция.
3. Компоновка
4. Загрузка программы в ОЗУ и её выполнение центральным процессорным устройством.
Я хочу узнать, происходят ли постоянно процессы 1-3 или в файле программы после компилирования сохраняются машинные кода и непосредственно выполняется процесс загрузки и выполнения?
Дополнен 9 лет назад
Спасибо всем.
Лучший ответ
Двойной клик. Хм, ну, допустим, у на windows.
После двойного клика по файлу в проводнике.. .
1. Проводник вызывает системную функцию открытия файла.
2. Эта функция вызывает функцию создания процесса.
3. Последняя функция открывает .ехе файл, читает заголовок, выделяет оперативную память для процесса, загружает данные (в т. ч. машинный код) в память, загружает библиотеки, если они не были загружены, производит инициализацию и переходит к точке входа (адрес первой машинной команды) .
Для этого она вызывает кучу других функций.
После этого программа сама ответственна за своё выполнение до момента, пока не будет возврата в вызвавшую функцию или вызова команды ОС, предназначенной для завершения программы.
Если конечно это не .net.
компиляцию делает компилятор, компоновку — компоновщик.
После компоновщика выходит исполняемый файл, который запускается двойным щелчком в проводнике без всяких там компиляций.
Источник: у
Остальные ответы
все описанное происходит на стадии компиляции в exe, описанное больше на транслятор похоже но не на С++
вы не путайте товарищь! сборку проекта с запуском ЕХЕ файла, это очень разные вещи. и касательно второго происходит (исходя смысла вопроса) развертывание РЕ формата. почитайте об этом! а то что вы написали под пунктами 1-4 это к области получения ЕХЕ фала РЕ формата.
«при запуске экзешного файла» происходит описанное в пункте 4
При клике на EXE файле происходит
4. Загрузка программы в ОЗУ и её выполнение центральным процессорным устройством.
1-3. Происходит на этапе компиляции, т. е. создается машинный код. И делается это единаразово для подготовки запускаемого файла. После этого ехе исполняется начиная с 4 этапа.
Не удается открыть EXE-файлы в Windows 7 или Windows Vista
Windows Vista Enterprise Windows Vista Home Basic Windows Vista Home Premium Windows Vista Starter Windows Vista Ultimate Windows 7 Enterprise Windows 7 Home Basic Windows 7 Home Premium Windows 7 Professional Windows 7 Starter Windows 7 Ultimate Еще. Меньше
Симптомы
Получение ошибки или ничего не происходит при запуске EXE-файл в Windows 7 или Windows Vista. Кроме того появляется сообщение о том, что у вас есть вирус.
Причина
Эта проблема может возникнуть, если вирус или другое стороннее приложение изменили или повредили некоторые параметры реестра по умолчанию.
Решение
Чтобы устранить эту проблему, можно сбросить параметры реестра в параметры по умолчанию. Чтобы сделать это, выполните следующие действия.
- Нажмите кнопку Пуск и введите regedit в поле поиска
- Щелкните правой кнопкой мыши Regedit.exe в списке и выберите Запустить от имени администратора
- Найдите следующий раздел реестра:
Дополнительные сведения
Если это не решило проблему или щелчок мышью приводит к следующему результату EXE-файлов запускает неверное приложение, воспользуйтесь следующей статьей:
Что происходит при запуске программы в Windows?
Такой вопрос: Что происходит при запуске программы в windows, какие процессы запускаются, и что вообще происходит в компьютере?
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
При запуске любой программы MS Office происходит псевдо установка программы
Приветствую. Беда с пакетом. Он нелицензионный, поломаный, может оттого, но на других компах.
При запуске скомпилированной программы ничего не происходит
Здравствуйте, программа которая написана на qt запускается только в самом "QtCreator". Если же.
При запуске ОС windows 7 происходит сбой системы
здравствуйте, помогите пожалуйста, при запуске ОС windows 7 происходит сбой системы.
Что происходит при запуске компьютера с информацией из BIOS
что происходит при запуске компьютера с информацией из BIOS
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Fstream: при запуске программы в IDE, файл не создаётся; почему так происходит?
Доброго времени суток!) Может немного глупый вопрос, но самому решить не получается. Когда собираю.
При запуске Windows происходит 100%-ная загрузка жесткого диска
При запуске windows 8 происходит 100% загрузка жесткого диска. При этом бук начинает ужасно.
При компиляции программы происходит ошибка, что делать?
Доброго времени суток ,писал себе курсовую, ни кого не трогал ,и тут бац откуда не возьмись вот.
Ошибка Windows при запуске программы
Есть задание, создать класс "полином" и несколько функций-членов. Задание выполнил, но в процессе.
При подготовке материала использовались источники:
https://otvet.mail.ru/question/94331595
https://support.microsoft.com/ru-ru/topic/%D0%BD%D0%B5-%D1%83%D0%B4%D0%B0%D0%B5%D1%82%D1%81%D1%8F-%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D1%8C-exe-%D1%84%D0%B0%D0%B9%D0%BB%D1%8B-%D0%B2-windows-7-%D0%B8%D0%BB%D0%B8-windows-vista-17e5b3c3-89b0-2f4f-1d80-3b5503c2660a
https://www.cyberforum.ru/windows/thread2600147.html