#1
|
|||
|
|||
doscmd
Yuri Kosivtsov написал(а) к All в Nov 24 20:35:59 по местному времени:
Нi, All В четвертой версии FreeBSD была команда doscmd , с помощью которой можно было выполнить приложение для DOS. В новой версии ее не нашел, ее спрятали куда-то или как? Bye --- |
#2
|
|||
|
|||
Re: doscmd
Eugene Grosbein написал(а) к Yuri Kosivtsov в Nov 24 15:21:53 по местному времени:
25 нояб. 2024, понедельник, в 20:35 NOVT, Yuri Kosivtsov написал(а): YK> В четвертой версии FreeBSD была команда doscmd , с помощью которой можно YK> было выполнить приложение для DOS. В новой версии ее не нашел, ее спрятали YK> куда-то или как? doscmd начиная с 5.3-RELEASE была перемещена из базы в порты, а в январе 2017 удалена из дерева портов, так как перестала собираться на актуальных тогда версиях FreeBSD. Eugene --- slrn/1.0.3 (FreeBSD) |
#3
|
|||
|
|||
doscmd
Yuri Kosivtsov написал(а) к eugen@grosbein.net в Nov 24 21:01:41 по местному времени:
Нi, eugen@grosbein.net 26 Nov 24, Eugene Grosbein wrote to Yuri Kosivtsov: YK>> В четвертой версии FreeBSD была команда doscmd , с помощью YK>> которой можно было выполнить приложение для DOS. В новой версии YK>> ее не нашел, ее спрятали куда-то или как? EG> doscmd начиная с 5.3-RELEASE была перемещена из базы в порты, EG> а в январе 2017 удалена из дерева портов, так как перестала собираться EG> на актуальных тогда версиях FreeBSD. Альтернатива? Не полноценный оконный эмулятор, вроде dosbox, а просто выполнить досовский .exe и закрыться. Или теперь нельзя? Bye --- |
#4
|
|||
|
|||
Re: doscmd
Eugene Grosbein написал(а) к Yuri Kosivtsov в Dec 24 06:20:55 по местному времени:
26 нояб. 2024, вторник, в 21:01 NOVT, Yuri Kosivtsov написал(а): YK>>> В четвертой версии FreeBSD была команда doscmd , с помощью YK>>> которой можно было выполнить приложение для DOS. В новой версии YK>>> ее не нашел, ее спрятали куда-то или как? EG>> doscmd начиная с 5.3-RELEASE была перемещена из базы в порты, EG>> а в январе 2017 удалена из дерева портов, так как перестала собираться EG>> на актуальных тогда версиях FreeBSD. YK> Альтернатива? Не полноценный оконный эмулятор, вроде dosbox, а просто YK> выполнить досовский .exe и закрыться. Или теперь нельзя? Не знаю. Никогда реально не пользовался doscmd. Сейчас попытался его собрать. Но doscmd писался в предположении, что работает на 32-битной системе, где размер указателей равен размеру unsigned int (32-битного целого), а так же делает ещё несколько предположений о системных сервисах типа формата структуры, передаваемого обработчикам сигналов на языке C, а формат поменялся при переходе на 64 бита, не говоря уже о том, что этот формат никогда не был документирован и это всегда был непереносимый прием в программировании. Ты точно собираешься использовать 32-битную FreeBSD/i386? Лишь в этом случае можно было бы попробовать собрать doscmd, чтобы ты мог бы потестировать результат. Eugene --- slrn/1.0.3 (FreeBSD) |
#5
|
|||
|
|||
Re: doscmd
Eugene Grosbein написал(а) к All в Dec 24 06:58:20 по местному времени:
05 дек. 2024, четверг, в 06:20 NOVT, Eugene Grosbein написал(а): EG> Ты точно собираешься использовать 32-битную FreeBSD/i386? EG> Лишь в этом случае можно было бы попробовать собрать doscmd, EG> чтобы ты мог бы потестировать результат. Кстати сказать, поддерживаемые 32-битные версии FreeBSD умеют утилизировать на современном железе до 24GB оперативной памяти, но хитрым образом - ядро адресует все 24 гигабайта, но каждый отдельный 32-битный пользовательский процесс получает не более 4GB минус 8MB. Eugene --- slrn/1.0.3 (FreeBSD) |
#6
|
|||
|
|||
doscmd
Yuri Kosivtsov написал(а) к eugen@grosbein.net в Dec 24 21:02:11 по местному времени:
Нi, eugen@grosbein.net 05 Dec 24, Eugene Grosbein wrote to Yuri Kosivtsov: EG> Но doscmd писался в предположении, что работает на 32-битной системе, EG> где размер указателей равен размеру unsigned int (32-битного целого), EG> а так же делает ещё несколько предположений о системных сервисах EG> типа формата структуры, передаваемого обработчикам сигналов на языке EG> C, а формат поменялся при переходе на 64 бита, не говоря уже о EG> том, что этот формат никогда не был документирован и это всегда EG> был непереносимый прием в программировании. EG> Ты точно собираешься использовать 32-битную FreeBSD/i386? EG> Лишь в этом случае можно было бы попробовать собрать doscmd, EG> чтобы ты мог бы потестировать результат. Точно буду пользоваться amd64 версией. 128 гигов оперативки. Пересобирать ничего не надо, ничего критичного нет. Как и ожидалось, наибольшие проблемы с переносом, это старый фидософт начала 2000 годов. И не основной, а всякие анализаторы статистики и прочее. Когда-то переносилось на FreeBSD с DOS, отсюда и doscmd. Поиграюсь с dosbox, когда руки дойдут. Ну а вообще-то идея о том, что можно взять новую машину, поставить последнюю FreeBSD, скопировать конфиги со старой, переткнуть сетевые интерфейсы и оно заработает, накрылась медным тазом. Слишком много различий с конфигах. Вопрос - named теперь тоже не в базе, а в портах? Bye --- |
#7
|
|||
|
|||
Re: doscmd
Eugene Grosbein написал(а) к Yuri Kosivtsov в Dec 24 19:56:30 по местному времени:
05 дек. 2024, четверг, в 21:02 NOVT, Yuri Kosivtsov написал(а): EG>> Ты точно собираешься использовать 32-битную FreeBSD/i386? EG>> Лишь в этом случае можно было бы попробовать собрать doscmd, EG>> чтобы ты мог бы потестировать результат. YK> Точно буду пользоваться amd64 версией. 128 гигов оперативки. Для того, чтобы безопасно запускать 16-битный софт типа DOS и программ в нём под патронажем более новых операционных систем, в 32-битных процессорах Intel реализован защищенный режим, но так же и режим V86, который специально добавлен для симуляции реального режима 8086, на который рассчитана DOS: работающая в защищенном режиме операционная система может создавать одну или более сред исполнения кода DOS в режиме V86 в изолированных областях памяти параллельно с работой 32-битных процессов и ядра OS. Поэтому 32-битные версии Windows и 32-битные версии FreeBSD/NetBSD/etc. могут запускать DOS. Но при написании специфицации новой тогда 64-битной архитектуры режим V86 был выкинут. Именно поэтому ни 64-битные версии Windows, ни 64-битная FreeBSD при переводе процессора в 64-битный режим теряют аппаратную поддержку V86. Остаётся только программная эмуляция типа qemu или dosbox. YK> Ну а вообще-то идея о том, что можно взять новую машину, поставить последнюю YK> FreeBSD, скопировать конфиги со старой, переткнуть сетевые интерфейсы и оно YK> заработает, накрылась медным тазом. Слишком много различий с конфигах. 4.11-RELEASE вышла в январе 2005 года, то есть почти ровно 20 лет назад. Накопилось немножечко изменений, да. Но есть вариант скопировать как есть всё дерево 4.11 со всем установленным софтом куда-нибудь в /usr/local/jail и запустить 32-битную 4.11 внутри клетки. У меня так работает фидонода, спасенная с прошлой работы, через локальный гейт на которой я это и пишу. YK> Вопрос - named теперь тоже не в базе, а в портах? Да. Но в базе есть unbound под именем local_unbound. Eugene --- slrn/1.0.3 (FreeBSD) |
#8
|
|||
|
|||
doscmd
Yuri Kosivtsov написал(а) к eugen@grosbein.net в Dec 24 21:25:05 по местному времени:
Нi, eugen@grosbein.net 06 Dec 24, Eugene Grosbein wrote to Yuri Kosivtsov: EG> 4.11-RELEASE вышла в январе 2005 года, то есть почти ровно 20 лет EG> назад. Накопилось немножечко изменений, да. Но есть вариант EG> скопировать как есть всё дерево 4.11 со всем установленным софтом EG> куда-нибудь в /usr/local/jail и запустить 32-битную 4.11 внутри EG> клетки. Это не решит ту задачу, ради которой все затевалось - обновить все )) Потихоньку все переставится и настроится. EG> Да. Но в базе есть unbound под именем local_unbound. Я ubound раньше не пользовался. Bye --- |
#9
|
|||
|
|||
doscmd
Yuri Kosivtsov написал(а) к eugen@grosbein.net в Dec 24 20:36:19 по местному времени:
Нi, eugen@grosbein.net 06 Dec 24, Eugene Grosbein wrote to Yuri Kosivtsov: EG> Остаётся только программная эмуляция типа qemu или dosbox. Победил я досбокс, написал в конфиге в секции autoexec mount c /usr/local/fido c: далее то, что надо выполнить exit Оно работает как раньше doscmd, то есть выполняет команду и завершается. Запустить в консоли в интерактивном режиме dosbox не получилось, но тут наверное, что то не то с видеоадаптером, он ни шрифты не грузит, ни splash screen. Еще нашел грабли в работе tr. Всегда раньше преобразовывал текст tr -d "\r" <infile>outfile . Удалял "возврат каретки". Проверил, не работает. Потом догадался LANG и MM_CНARSET выставить не юникодовские - заработало. Bye --- |