Несколько Экземпляров одного и того же проекта / программы

Как осуществляется разделение нескольких экземпляров одного и того же проекта / программы, это означает, какой механизм разделяет данные двух экземпляров одного и того же проекта / программы?

Редактировать:
Примеры:

  1. При использовании программы записи два раза и работе с FILE1 и FILE2. Как большинство ОС разделяют два экземпляра? Как я прочитал в комментариях, файлы получают разные блоки памяти. Блоки памяти «получают» имена файлов, например, блок 143 может быть адресован FILE1, а блок 223 может быть адресован FILE2?
  2. Симуляция: если я вызываю один тип симуляции (одинаковые аргументы командной строки) для двух разных файлов ввода данных. Как ОС разделяет эти файлы, касающиеся адресации различных блоков / экземпляров памяти?

Привет
Streight

0

Решение

Ответ из обсуждения выше:

ОС назначает каждой программе или экземпляру программы определенный блок памяти. Вы когда-нибудь пытались получить доступ к случайной памяти? Большую часть времени ваша программа будет зависать. Это связано с обработкой ОС. Если вы обращаетесь к памяти, которая вам не назначена, ОС автоматически завершает работу вашей программы (функция безопасности).

Есть отдельная память для program и память о том, что program uses, Память, выделяемая для запуска программы (пространство, требуемое для имени класса / функции и т. Д.), Отделена от любых переменных, которые вы назначаете во время выполнения.

Все это предполагает, что ваша ОС поддерживает несколько процессов, выполняющихся параллельно — очень старые или очень ограниченные встроенные системы могут даже вообще не поддерживать это. Многие доски, на которых вы работаете (в школе), не поддерживают что-то подобное, и вы должны написать это самостоятельно.

Когда вы вызываете одну и ту же программу с отдельными файлами, каждый файл существует в своем собственном пространстве памяти. Нет, они не помечены как таковые. Не пытайтесь guess какие имена после компиляции. Это просто не работает.

Зачем?

1) Это зависит от компилятора. Разные компиляторы используют разные способы.

2) Он не читается человеком (если вы сами не пишете компилятор) (поправьте меня, если я ошибаюсь)

ОС / компилятор дает им уникальное имя (может зависеть от времени, от ОС или от сотен других вещей). Программы не знают друг о друге и работают в собственном пространстве.

Предоставлено: @Hulk @ Мохаммед Али Байдун

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]