|
|
||
Дискуссия о распределении памяти в ОС11.02.2021, 01:09. Показов 16226. Ответов 132
Метки нет (Все метки)
Нужно 2793 ГБ. У вас установлено столько в компе?
0
|
||
| 11.02.2021, 01:09 | |
|
Ответы с готовыми решениями:
132
Работа со стеком на последовательном распределении памяти Реализация стека на массиве и динамическом распределении памяти Реализовать процедуры работы со стеком на последовательном распределении памяти |
|
|
||
| 13.02.2021, 11:44 | ||
|
Не будем впадать в крайности, у меня оперативки 16 ГБ, а HDD меньше 100ГБ осталось Достаточно заполнить байтовый массив размером 20 ГБ(21474836480 Байт) и вывести первое и последнее значение в сообщение msg. Скомпилируйте пож-та, если не трудно, я только запущу на выполнение.
0
|
||
|
COM‐пропагандист
|
|
| 13.02.2021, 13:22 | |
|
Вот программа, которая выделяет 20 гигабайт памяти, заполняет символами с «!» по «z» и выводит первый и последний символ на консоль.
1
|
|
|
|
||
| 13.02.2021, 13:53 | ||
|
Во первых, не 20, а все 36! 20 на диске и 16 оперативки скушало. Ну ладно, около 2-х гигов было уже занято, значит 14 ГБ + Во вторых, после закрытия программы ни чего не освободило, так и осталось занятой оперативка и диск. И самое главное, какое отличие от кода уважаемого The trick? Точно так же создал программно из своего приложения Swap посредством CreateFile "Отображённый файл.bin". А что же Винда сама не захотела использовать память свыше моей оперативки, 16 Гигов? Мы же ей явно говорим DIM(20ГБ), типа давай! А она пишет переполнение?
0
|
||
|
Кормпилятор
|
||
| 13.02.2021, 14:12 | ||
|
твоя прога заполняет всю имеющуюся физическую память и уходит в своп, браузер делает тоже самое, хотя даже один браузер, при нехватке памяти делает полный писец, который называется "работать на компе невозможно совсем". Диск начинает колбаситься между четыремя операциями(запись свопа 1, чтение свопа 2, чтение свопа 1, запись свопа 2 ) в хаотичном порядке, как система решит расставить приоритеты. И это только две программы которым нужна память, если на компе запущен ещё софт и ему потребуется память, начнётся тройной расколбас, в таких случаях обычно по звукам из системника слышно, что если такое продолжится ещё минут 5, то хард может попросту развалиться на части, ему становится очень хреново, и комп практически зависает. Скорость всех вышеописанных операций замедляется от 10 раз и ещё больше. Т.е. дело не в маппинге, а в том, что эта подкачка и весь этот механизм вызывает в моменты, когда память переполнена.
0
|
||
|
COM‐пропагандист
|
||||||
| 13.02.2021, 14:33 | ||||||
|
Во‐вторых, если вызвать прямо HeapAlloc или VirtualAlloc на отключённом файле подкачки, то то они в потрохах будет делать CreateFileMapping на INVALID_HANDLE_VALUE, а это ограничит наличием свободного блока максимального размера. Если делать CreateFileMapping на действительном HANDLE, то свободным блоком максимального размера считается весь файл. Добавлено через 5 минут
0
|
||||||
|
Кормпилятор
|
||
| 13.02.2021, 14:43 | ||
|
пусть они откроют в браузере штук хотя бы 20 вкладок, заполненных гугловыми картинками. И это только 1 прога, одна, понимаешь... Уход в своп это больно, абсолютно всегда. Ну конечно, если не трогать совсем комп во время выполнения проги и чтобы он был чистый без софта совсем, ну и чтобы сама прога не давала запросы на чтение и запись по всему map файлу, т.е. сценарий то не особо частый. И чем меньше памяти, тем жопее ситуация и больнее своп.
0
|
||
|
|
||
| 13.02.2021, 14:51 | ||
|
Я как раз за это и говорю - не Винда решает создать дополнительно 4ГБ, которых недостаёт, что было бы логично, а тупо создаётся файл кодом на максимальный объём на все 20ГБ. Почему? Т.е. Винда не умеет определить и дополнить именно недостающий размер с диска. Это означает дикие тормоза в любом раскладе, даже если у меня есть необходимая память, но код всё равно создаст файл. Т.е. такой код бесполезен, вернее вреден.
0
|
||
|
COM‐пропагандист
|
||
| 13.02.2021, 14:51 | ||
|
0
|
||
|
Модератор
|
|||||||
| 13.02.2021, 15:10 | |||||||
|
Добавлено через 12 минут
0
|
|||||||
|
Кормпилятор
|
||||
| 13.02.2021, 15:36 | ||||
Как бы не замечал такого поведения, если памяти хватает. Как это проверить? Загрузить в GIMP-е толстую картинку, отойти на час, потом резко пройтись по всему изображению? Добавлено через 24 минуты Вот мы хотим имея 16 гигабайт завести 100. Это равносильно: имея 2 Гб памяти попытаться использовать 12. Эта ситуация легко моделируется. Прошу попробовать и рассказать о своих впечатлениях о работе за таким компом, т.е. взять например старенький кор дуо\квад, с XP\7 и загрузить на нём 70 вкладок в браузере, это и будет примерно 12 Гб. И повторюсь это лишь одна программа. А софта который может лопатить диск - тоже хватает, это и видеоконвертеры, и архиваторы (вообще дикая штука в такой ситуации) и поиск по диску. А если оно всё вместе - это сразу кирдык))) Через час разверну. Хоть это и не совсем правдивый тест, т.к. память может быть отожрана другим софтом, но всё же интересно проверить сие.
0
|
||||
|
Модератор
|
||
| 13.02.2021, 15:41 | ||
|
Процессу все также доступно 100ГБ виртуальной памяти. Память для других процессов не отжирается, система постоянно свопит только мой процесс, т.к. файл подкачки отключен.
0
|
||
|
Кормпилятор
|
||
| 13.02.2021, 16:37 | ||
|
Ну точнее бывает конечно, если купить соотв. железо и всё разграничить, на каждом диске держать свою софтину и чтобы все вместе не драли один диск. Обычно таких идеальных условий нет. Невозможно гарантировать отсутствие файла подкачки и умеренную работу с диском другого софта. В общем-то про другие вещи говорил и они легко проверяются реальным софтом, но не прогой, которая читает и пишет последовательно, это ничем сильно не отличается от того сценария, про который писал: мол можно самому написать алгоритм и будет не хуже, если мы так делаем(пишем кусочками как в VESA). А если прога пожрёт всю память начнётся своппинг и она будет писать и читать хаотично все эти 100ГБ, раз на это делается упор, плюс своппинг не одного, а нескольких приложений, то это уже другой расклад про который и говорю, расклад, когда включён файл подкачки и в приложениях заводится память самым обычным образом, DIM-ами, ALLOCATE-ами и прочими подобными.
0
|
||
|
Модератор
|
||||
| 13.02.2021, 16:55 | ||||
|
0
|
||||
|
|
||
| 13.02.2021, 17:10 | ||
|
По крайней мере все ваши примеры содержали CreateFile. Если я просто пишу DIM (20ТБ) система мне тупо отказывает.
0
|
||
|
Модератор
|
||||
| 13.02.2021, 17:19 | ||||
|
Если у тебя есть достаточно памяти, то как я и написал ничего свопиться не будет.
0
|
||||
|
|
|
| 13.02.2021, 18:39 | |
|
0
|
|
|
Модератор
|
||
| 13.02.2021, 20:38 | ||
|
Во-вторых, вот те же самые условия как у тебя, только память я выделил правильно, а не как ты:
0
|
||
|
|
|
| 13.02.2021, 21:25 | |
|
0
|
|
|
Модератор
|
|||
| 13.02.2021, 21:45 | |||
|
1
|
|||
|
|
|||
| 13.02.2021, 22:09 | |||
|
Не забываем, что у меня 16ГБ оперативки. И по уму система должна вначале кушать её, а как закончится, то добрать 40+ ГБ из файла подкачки. Но этого не происходит.
0
|
|||
| 13.02.2021, 22:09 | |
|
Реализовать процедуры работы со стеком на последовательном распределении памяти
Стек: Реализовать процедуры работы со стеком на последовательном распределении памяти
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 30. Фосфорный и азотный замки по "честному" закону лимитирования Либиха
anaschu 16.07.2026
Основные достижения за последние дни
1. Механизм отложенного высвобождения фосфора
Добавлен специальный пул для медленного разложения меланизированных гиф ЕСМ
Реализована разная скорость. . .
|
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2.
Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
|
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её.
Всё это стресс конечно. Почему?. . .
|
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот.
Ларри Уингет
|
|
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|