Информация
- В рейтинге
- Не участвует
- Откуда
- Петропавловск, Северо-Казахстанская обл., Казахстан
- Зарегистрирован
- Активность
Специализация
Десктоп разработчик, Инженер встраиваемых систем
Pure C
Assembler
X86 asm
Win32 API
Visual Basic
MySQL
Git
ООП
Разработка электроники
Обратная разработка
Как, как да как.
Легко — именно так работает IDE классического VB и VBA. Она вообще не хранит код как текст. Вы его не нацдёте в памяти процесса. Даже в виде отдельных строк. И у неё вообще нет проблем с представлением синтаксически некорректных данных — просто путём введения отдельной сущности для представления некорректных стейтментов.
Для вас, автор, это, возможно будет откровением. Ваша идея не нова. Наверное это грустная новость, но приятная новость в том, что я тоже считаю такой подод классным
Так вот, именно так устроен Visual Basic и VBA. Классический VB, а не дотнет, например VB6. Код перестает быть плейтнекстом в момент загрузки с диска. Дальше IDE работает с бинарными графоподобными и RPN-подобнымм данными. Для отображения кода на экране он воссоздаются на лету — только те строки, которые нужно отрисовать.
Всем злопыхателем, которые в статье написали, что идея неудачная и её не реализовать и она спотыкнётся на синтаксически некорректных данных можете приводить это как пример и как опровержение.
Господи... Во что они превращают C++...
В этом комменте собраны все когнитивные ошибки, какие только можно. Начиная с «ошибки выжившего»...
Судить по открытому окну это худшее, что можно придумать. Гораздо достовернее иметь приятеля ПТУ-шника, который рассказывает, как нежные прецизионные вещи забиватся с помощью кувалды и какой-то матери. Из раза в раз, а не в виде редчайшего исключения.
Ещё один хорой способ делать суждения: это посмотреть на множество машин после местных владельцев (а не свежепригнанных с Европы): количество синей изоленты, обходов и упрощения штатных систем, и прочего колхоза зашкаливает.
Но нет, мы будем судить по виду из окна. Ведь каждая увиденная в окне машина гарантированно прошла через ПТУ-шника, и над каждой такой левитирует светящийся нимб, который тождественнен тому, что эта машина дальше будет долго и благополучно ездить, без шанса скорой поломки, без риска для безопасности.
Да.
Нет, нет и ещё раз нет.
И что, любой человек, который может в ремонт ноутбуков, способен разрабатывать GNSS? С их гигагерцовыми сигналами и прочей СВЧ-магией?
Наверное в постсоветском мире это и правда дешелвле: но это только доказывает мой поинт — оно дешевле, потому что людей, способных на что-то такое, немного, а задач для них около нуля. Поэтому они готовы разрабатывать GNSS за еду. Иначе по заклнам рынка это обходилось бы дороже, чем с Китая.
Ну да, особенно на фоне того, что технику делают катастрофически трудноремонтируемымой.
Недавний пример: чип на материнской плате, в который зашит криптоключ, и этот чип общается с другими чипами, и криптоключ используется для дешифровки. Оный чип сгорел. Если заменить его на новый, что само по себе не просто, ибо БГА, то ничего не заработает, потому как без наличия криптоключа взаимодействия с соседними чипами не получится.
Ноутбук Делл.
Чем и где зарабатывать? Разработкой электроники?
Придумайте мне задачу, и я покажу, что китайцы уже давно сделали это и продают...
>нормальную 64-битную версию x86
IA-64 это не 64-битная версия x86, это VLIW.
Без AMD, глядишь, Интел бы придумала нормальную 64-битную версию x86, а не то, что сейчас известно под именем amd64 aka x86-64.
Только не спрашивайте, что не так с x86-64.
Он не лаконичный, а извращенский. Он удел тех, чья единственная забота лишь в том, чтобы код симпатично выглядел.
В аду есть отдельный котёл для тех, кто такую форму записи придумал.
В Си исключения сравнительно легко эмулируются с помощью функций setjmp/longjmp. Легко пишутся макросы my_try, my_catch, которые позволяют получить структуры кода как в плюсах.
Я вообще не пью, не курю и уж тем более наркотики никогда не употреблял.
Но много раз доводилось программировать после многих часов без сна. И тут, надо сказать, несмотря на сильную усталость, в какой-то момент работа начинает идти как по маслу. Мене отвлекаешься на внешние раздражмтели, меньше отвлекаешься на внутренние раздражители в виде всяких мыслей, идей, ассоциаций, воспоминаний, которые постоянно возникают в процессе и в результате умственной деятельности. Просто сидишь и как машина пишешь код.
Но это же трындёж (если не сказать грубее) чистой воды. 2001 год, говорите? Уже XP на подходе была, Windows 2000, NT 4.
Удаленный
терминалрабочий стол — был.Параллельная работа нескольких пользователей — была.
Разрешения для файлов в NTFS — были.
Нормальная консоль? Консоль как консоль, может быть инструмениариев типа grep, sed, awk, xargs недоставало, но это же не вина консоли.
Чел возможно сидел на 9x и FAT32, раз жалуется на странные вещи.
Но дальше начинается лютая бредятина: процессы и семафоры. То есть человек на полном серьезе претендует, что в ОС Windows не было ни концепции семафоров, ни, тем более, концепции процессов? Может он под MS-DOS сидел, а ему все говорили, что именно это и есть Windows?
Такова плата за полагание в разработке на фундаментально порочную парадигму.
Автор не понимает, как устроена виртуальная память в Windows. Ни в коем случае флаг MEM_RESERVE не резервирует RAM. Он резервирует диапазон адресов виртуального адресного пространства конкретно взятого процесса. Резервирует — значит просто делает запись, что такой-то диапазон адресов считается зарезервированным, и последующая попытка зарезервировать какой-то другой диапазон, пересекающийся с этим, окончится неудачей.
Смысл резервирования — дать прикладному коду процесса гарантию того, что в большом диапазоне адресов, который предположительно понадобится коду, в самый нужный момент внезапно не окажется ненужной неожиданной страницы, выделенной каким-то другим компонентом программы.
Это чисто вопрос борьбы с фрагментацией адресного пространства, с ситуацией, когда свободно 80 процентов АП, но самый большой непрерывный регион, который может быть выделен — не больше 2 процентов от размера АП.
Причем гарантия весьма эфемерная. По идее, более надёжным решением было бы, если бы Windows в ответ на операцию резервирования (reserve) возвращала прикладному коду некий token/cookie, а при операции выделения (commit) разрешала бы выделять только при предоставлении токена, доказывающего право вызывающей стороны распоряжаться страницами именно в этом диапазоне. Тогда бы каждый смог выделять/освобождать сираницы только в том регионе, в который он предварительно зарезервировал.
На деле же никаких токенов нет, и всё строится просто на доверии к тому, что каждый программист пишет код, который не станет выделять страницы в диапазоне, который резервировал кто-то другой.
Так вот, информация о карте свободных/зарезервированных/занятых страницах (регионах адресов) для каждого процесса хранится в виде сбалансированного дерева, которое называется VAD-tree, где VAD — virtual address (space) descriptor.
И при операции резервирования если какие-то ресурсы и тратятся, так это память под VAD.
VBScript в офисе? Вы о чем вообще?
Как будто в программировании нет точно таких же тлетворных тенденций, что вы описали...
Точно передатчики?