- КУСКИ ДАННЫХ - НАПРИМЕР ГДЕ ТО ЕСТЬ СТЭК ДЛЯ НАС, СТЭК ДЛЯ ДРУГОЙ ПРОГРАММЫ - ЭТО КУЧА, ЕСТЬ ТАКЖЕ СЕГМЕНТЫ ДИНАМИЧЕСКИ ГЛОБАЛЬНЫХ ПЕРЕМЕННЫХ - ЭТО ТАМ ГДЕ ИЗ РАЗНЫХ ПРОГРАММ СОБИРАЮТСЯ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ ПОЭТОМУ ОНИ ДИНАМИЧЕСКИЕ, ДАЛЬШЕ ЕСТЬ СЕГМЕНТ КОДА - КОД ОТ РАЗНЫХ ПРОГРАММ (УЖЕ ДИЗАССЕМБЛИРОВАННЫЙ) И ТАМ ХРАНЯТСЯ НАЗВАНИЯ ФУНКЦИЙ ИМЕН ПЕРЕМЕННЫХ И Т Д... ЕСТЬ ЕЩЕ ЛИЧНО ДЛЯ НАС И ДЛЯ КАЖДОЙ ПРОГРАММЫ СЕГМЕНТ СО СТАТИЧЕСКИМИ ГЛОБАЛЬНЫМИ ПЕРЕМЕННЫМИ, ИЗ НАШЕЙ ПРОГРАММЫ.. ТАК ДЛЯ КАЖДОЙ ПРОГРАММЫ. ТАКЖЕ ЕСТЬ СЕГМЕНТ SYSTEM - ГДЕ ХРАНИТСЯ ДАННЫЕ ИХ СИСТЕМЫ - СИСТЕМНЫЕ ПРОЦЕССЫ И Т Д... + ЕЩЕ В КАЖДОМ СЕГМЕНТЕ ОСОБЕННО В КУЧЕ (КУЧА - ПО МНЕ ЭТО НЕ СОВСЕМ СЕГМЕНТ А ВСЕ ОСТАЛЬНОЕ КРОМЕ ЭТИХ СЕГМЕНТОВ) + ЕЩЕ ЕСЛИ МЫ ЗАКРЫЛИЛИ ПРОРГАММУ СВОЮ ТО ВЫЗЫВАЕТСЯ КО ВСЕМУ СТЭКУ ДЕСТРУКТОР И ДАННЫЕ ОБНУЛЯЮТСЯ, И ПЕРЕХОДЯТ В КУЧУ. + НЕ ВОЗМОЖНО УВЕЛИЧИТЬ СТЭК ВО ВРЕМЯ ПРОГРАММЫ - В СТЭКЕ НЕТ ЛИШНЕГО ТАК КАК ОН ЗАРАНЕЕ ПРОСЧИТЫВАЕТ КОЛИЧЕСТВО ПЕРЕМЕННЫХ И МАССИВОВ В БИТАХ И ВЫДЕЛЯЕТ ГДЕ-ТО ИЗ УЖЕ ОСВОБОЖДЕННОЙ ПАМЯТИ ДАННЫЕ ИЛИ ГДЕ-ТО БЕРЕТ ПУСТОЙ КУСОК КУЧИ ПОД НУЖНОЕ КОЛИЧЕСТВО БИТ, ЕСЛИ ПАМЯТИ НЕ В КУЧЕ НЕ В СТЭКЕ СТОЛЬКО НЕТ, ТО ПАМЯТЬ НЕ ВЫДЕЛЯЕТСЯ. НА СЧЕТ ГЛОБАЛЬНЫХ ПЕРЕМЕННЫХ Я ТАК ПОНЯЛ - СТАТИЧЕСКИЕ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ ВЫДЕЛЯЮТСЯ ТАКЖЕ КАК СТЭК ТОЛЬКО ХРАНЯТСЯ НЕ В STACK А В STATIC DATA. А ТАКЖЕ ЕСТЬ КУЧА ГЛОБАЛЬНЫХ ПЕЕРЕМЕННЫХ, И ДИНАМИЧЕСКИЕ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ ВЫДЕЛЯЮТСЯ ИЗ DYNAMIC DATA. РЕГИСТРЫ - ЭТО ВООБЩЕ НЕ ОПЕРАТИВНАЯ ПАМЯТЬ, А ЕЩЕ ОДИН ВИД ПАМЯТИ (СУЩЕСТВУЮТ ВИДЫ ПАМЯТИ - ОПЕРАТИВНАЯ О КОТОРОЙ ШЛА РЕЧЬ, НОСИТЕЛИ И ДИСКИ, РЕГИСТРЫ И CPU, И КЕШ ПРОЦЕССОРА). КОРОЧЕ ПРИМЕРНО С ОПЕРАТИВКОЙ ВСЕ ПОНЯЛ ВРОДЕ КАК. А СИСТЕМНАЯ ПАМЯТЬ ВЫДЕЛЯЕТСЯ ПРИ УСТАНОВКЕ ОС НА ПК, ПРАВЕЛЬНО?
Не кричи
я не кричу, просто прочитайте мое обьяснение памяти пж и скажите я понял или бред
почему?
Я не знаю почему...
Обсуждают сегодня