Информация об изменениях

Сообщение Re[17]: Откуда такая неизбывная приверженность к константам? от 12.09.2019 12:17

Изменено 12.09.2019 12:18 Sharowarsheg

Re[17]: Откуда такая неизбывная приверженность к константам?
Здравствуйте, Евгений Музыченко, Вы писали:

S>>В программах дофига констант, от которых требуется, чтобы они просто не были слишком плохи.


ЕМ>Ну вот конкретно в Ваших программах, какими константами задаются адрес и максимальный размер кучи, адреса загрузки системных DLL и т.п.?


Конкретно в моих адреса загрузки системных DLL не задаются, я же не пишу загрузчик системных DLL. Размеры массивов (битность индексов) — задаются константами 16, 21, 24, и 48 (в разных местах и применительно к разным сущностям, естественно).

S>>Для DOS было достаточно 640 KB, а когда перестало быть достаточно, перестала существовать DOS, вместе с x86 реальным режимом.


ЕМ>Это Вы уже все прочно забыли. HiMem/Emm386 появились в самом начале 90-х, и не от хорошей жизни. Иногда только эти 100-200 дополнительных килобайт и позволяли запустить софт, который иначе никак в память не помещался.


Не помню, чтобы что-то куда-то не помещалось. MultiEdit с дос навигатором помещались везде. Первое, что перестало помещаться, был DOOM, для которого сделали DOS4GW.

S>>Так и для 32 бит достаточно, легко, и удобно сделать разделение 2:2


ЕМ>А зачем именно 2:2, а не m:n?


Чтобы по старшему биту можно было узнать, это пользовательский указатель, или ядерный.

S>>Старый софт, который уже не переписывается, всё ещё можно запустить, даже на физической машине, если нужно, но когда перестало быть достаточно 2 GB на процесс для нового софта, выкинули x86 вместе с 32-битным режимом, и всё новое, что могло бы сожрать больше 2 GB, написали на x64.


ЕМ>И это тоже наблюдения из мира розовых пони. Майкрософту бы нафиг не сдалось переделывать 2:2 в 3:1, если бы не массовое давление со стороны юзеров винды, в том числе жирных корпораций.


У микрософта в то время было достаточно денег, чтобы купить все те "жирные" корпорации, а также купить пользователей и в рабство обратить. Это собственные микрософтовские программисты, которых тоже перфекционизм одолел, захотели сделать все константы настраиваемыми, и обосрали всю малину.

S>>На ближайшие десять лет x64 достаточно, и константа 8:8 TB или сколько там, вполне прекрасна.


ЕМ>Ну да, один французский король тоже нечто подобное говаривал.


S>>Кончилось поколение — кончилась константа, бери другую.


ЕМ>Хорошо, что математики, несколько сотен лет назад придумавшие заменять конкретные числа буквами, так не думали.


Математики не в состоянии сделать ничего практического. Например, нельзя построить мост из одних букв, какая бы ни была математика. В какой-то момент придётся подставить вместо букв хотя бы длину и ширину цифрами.
Re[17]: Откуда такая неизбывная приверженность к константам?
Здравствуйте, Евгений Музыченко, Вы писали:

S>>В программах дофига констант, от которых требуется, чтобы они просто не были слишком плохи.


ЕМ>Ну вот конкретно в Ваших программах, какими константами задаются адрес и максимальный размер кучи, адреса загрузки системных DLL и т.п.?


Конкретно в моих адреса загрузки системных DLL не задаются, я же не пишу загрузчик системных DLL. Размеры массивов (битность индексов) — задаются константами 16, 21, 24, и 48 (в разных местах и применительно к разным сущностям, естественно).

S>>Для DOS было достаточно 640 KB, а когда перестало быть достаточно, перестала существовать DOS, вместе с x86 реальным режимом.


ЕМ>Это Вы уже все прочно забыли. HiMem/Emm386 появились в самом начале 90-х, и не от хорошей жизни. Иногда только эти 100-200 дополнительных килобайт и позволяли запустить софт, который иначе никак в память не помещался.


Не помню, чтобы что-то куда-то не помещалось. MultiEdit с дос навигатором помещались везде. Первое, что перестало помещаться, был DOOM, для которого сделали DOS4GW.

S>>Так и для 32 бит достаточно, легко, и удобно сделать разделение 2:2


ЕМ>А зачем именно 2:2, а не m:n?


Чтобы по старшему биту можно было узнать, это пользовательский указатель, или ядерный.

S>>Старый софт, который уже не переписывается, всё ещё можно запустить, даже на физической машине, если нужно, но когда перестало быть достаточно 2 GB на процесс для нового софта, выкинули x86 вместе с 32-битным режимом, и всё новое, что могло бы сожрать больше 2 GB, написали на x64.


ЕМ>И это тоже наблюдения из мира розовых пони. Майкрософту бы нафиг не сдалось переделывать 2:2 в 3:1, если бы не массовое давление со стороны юзеров винды, в том числе жирных корпораций.


У микрософта в то время было достаточно денег, чтобы купить все те "жирные" корпорации, а также купить пользователей и в рабство обратить. Это собственные микрософтовские программисты, которых тоже перфекционизм одолел, захотели сделать все константы настраиваемыми, и обосрали всю малину — и, конечно, вызвали тыщщи синих экранов.

S>>На ближайшие десять лет x64 достаточно, и константа 8:8 TB или сколько там, вполне прекрасна.


ЕМ>Ну да, один французский король тоже нечто подобное говаривал.


S>>Кончилось поколение — кончилась константа, бери другую.


ЕМ>Хорошо, что математики, несколько сотен лет назад придумавшие заменять конкретные числа буквами, так не думали.


Математики не в состоянии сделать ничего практического. Например, нельзя построить мост из одних букв, какая бы ни была математика. В какой-то момент придётся подставить вместо букв хотя бы длину и ширину цифрами.