The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Опубликованы тесты простейших приложений на различных языках..., opennews (??), 08-Дек-19, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


107. "Опубликованы тесты простейших приложений на различных языках..."  +1 +/
Сообщение от Анони (?), 08-Дек-19, 14:53 
> Что он имел в виду?

Ух как заминусовали то... А то, что прикладное ПО под линукс предпочтительно должно быть мультиархетиктурным, наверно, забыли.
Под вынь, конечно же, которая до недавнего времени только x86, ясен пень легче, тем более ДОС.

Ответить | Правка | К родителю #64 | Наверх | Cообщить модератору

125. "Опубликованы тесты простейших приложений на различных языках..."  –1 +/
Сообщение от Ordu (ok), 08-Дек-19, 15:44 
>> Что он имел в виду?
> Ух как заминусовали то... А то, что прикладное ПО под линукс предпочтительно
> должно быть мультиархетиктурным, наверно, забыли.

Ой, ну это же совершенно отдельный вопрос. Это сильно зависит от того, что ты пишешь и зачем ты это пишешь. Кому предпочтительна мультиархитектурность? Мне? Зачем? У меня есть amd64 и arm64, и как-то так выходит, что если я чего-то пишу, то только для одной из этих платформ. Какая мне разница, будет ли такая писанина мультиархитектурной?

> Под вынь, конечно же, которая до недавнего времени только x86, ясен пень
> легче, тем более ДОС.

ДОС сложнее, поверь мне. Там костыли на костылях, костылями погоняют. Если глянуть на историю DOS и программ под него, там можно увидеть, что официальной документации на DOS программистам как правило не хватало, поэтому они лезли в кишки доса и биоса, и поэтому очень быстро DOS'у, для того, чтобы развиваясь не ломать совместимость с существующим софтом, пришлось отказаться от внутренних архитектурных изменений, поэтому всё что появлялось нового реализовывалось в виде наслоений на старое. То же самое с bios'ом. То же самое с самой архитектурой x86. И поэтому программирование под DOS -- это всегда увлекательный квест. Я очень люблю его, и люблю я его именно за те анальные боли, которые он причиняет. Хотя надо признаться, уже лет десять не страдал подобным.

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

В лине же, ты берёшь список констант для сисколлов, и по большому счёту это и всё. Да, если ты хочешь общаться с X11, неплохо было бы взять xlib или xcb, чтобы не реализовывать X-протокол самостоятельно, но даже это не очень обязательно: не так уж сложно реализовать те кусочки протокола, которые тебе нужны.

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

Ответить | Правка | Наверх | Cообщить модератору

246. "Опубликованы тесты простейших приложений на различных языках..."  +2 +/
Сообщение от Урри (?), 09-Дек-19, 01:24 
Вы прочитали монолог типичного диванного враля.

Начиная с того, что у него "есть amd64 и арм64" (арм-32 у него уже в прошлое ушел, хотя выпускается и продается на ура; да и какой, кстати, арм то? их довольно много и они сильно несовместимы в зависимости от производителя)% продолжая тем, что не знает об апи разных осей и заканчивая тем, что он знает также и об отладке.

Ordu, признайтесь - вы ничего сложнее хелловорлда не писали. Это отлично видно по вашим комментариям.

Начиная с того, что в досе был большой и стабильный список интов (типа сисколов), для которых достаточно было помнить номера (типа то, что вы в линуксе хвалите) и в какие регистры что пихать. Дополнительный софт приносил свои дополнительные номера. Были справочники, у меня был даже очень большой бумажный, где были расписаны возможные конфликты. Еще где-то на антресолях лежит.

В винде сразу был отличный стабильный WinAPI, еще с 16-битной тянулся и до сих пор остается. Который тысячу лет не менялся, просто обрастая новыми функциями. То же самое, что и в линуксе.

> Элементарно отладка без debug-инфы вызывает кучу проблем. gdb можно использовать для этого, но крайне неудобно.

Бездарь!!! Ты НЕ программируешь, ты просто звездишь на форуме.

Все есть, и дебажная инфа (волшебные буквы -g2) и профайлинг (волшебные слова gprof, valgrind, callgrind).

Я прямо сейчас дебажу с помощью F5/F6/F7 через vscode+gdb нейтивные бинари на ведроиде и винде (один код, две разные архитектуры) с полным комфортом - с колстеком, вочем, мгновенным состоянием переменных и брекпоинтами.

Ответить | Правка | Наверх | Cообщить модератору

263. "Опубликованы тесты простейших приложений на различных языках..."  –1 +/
Сообщение от Ordu (ok), 09-Дек-19, 02:28 
> Вы прочитали монолог типичного диванного враля.
> Начиная с того, что у него "есть amd64 и арм64" (арм-32 у
> него уже в прошлое ушел, хотя выпускается и продается на ура;

А мне какое дело до того, что он продаётся? У меня его нет. И покупать его я не собираюсь. Нафиг он мне сдался?

> да и какой, кстати, арм то? их довольно много и они
> сильно несовместимы в зависимости от производителя)% продолжая тем, что не знает
> об апи разных осей и заканчивая тем, что он знает также
> и об отладке.

Какое мне дело до апи разных осей? Речь идёт о линуксе, все эти железные детали он вполне инкапсулирует, но ежели вам так важно знать, что за железка, то это raspberri pi.

> Ordu, признайтесь - вы ничего сложнее хелловорлда не писали. Это отлично видно
> по вашим комментариям.

Ещё один диагност по юзерпикам. Вот что меня всегда забавляет в программистах, почему-то каждый программист уверен в том, что он умнее всех остальных, и что никто кроме него компилятора никогда в руках не держал. Что ещё больше забавляет, из десяти этих программистов, девять не умеют кодить.

> Начиная с того, что в досе был большой и стабильный список интов
> (типа сисколов), для которых достаточно было помнить номера (типа то, что
> вы в линуксе хвалите) и в какие регистры что пихать.

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

> Дополнительный
> софт приносил свои дополнительные номера. Были справочники, у меня был даже
> очень большой бумажный, где были расписаны возможные конфликты. Еще где-то на
> антресолях лежит.

Да-да.

> В винде сразу был отличный стабильный WinAPI, еще с 16-битной тянулся и
> до сих пор остается. Который тысячу лет не менялся, просто обрастая
> новыми функциями. То же самое, что и в линуксе.

Стабильный -- это да, но вот насчёт отличного я бы поспорил.

>> Элементарно отладка без debug-инфы вызывает кучу проблем. gdb можно использовать для этого, но крайне неудобно.
> Бездарь!!! Ты НЕ программируешь, ты просто звездишь на форуме.

Я приму твоё мнение к сведению. Оно очень важно для меня.

> Все есть, и дебажная инфа (волшебные буквы -g2) и профайлинг (волшебные слова
> gprof, valgrind, callgrind).

Ты вообще читаешь, что я пишу или нет? Один из бонусов писания на ассемблере, что ты можешь отлаживать релиз не сложнее, чем отладочную сборку. Но не в линуксе, потому что в линуксе нет софта, заточенного под отладку без отладочной информации. Так понятнее стало?

> Я прямо сейчас дебажу с помощью F5/F6/F7 через vscode+gdb нейтивные бинари на
> ведроиде и винде (один код, две разные архитектуры) с полным комфортом
> - с колстеком, вочем, мгновенным состоянием переменных и брекпоинтами.

vscode слишком сложно для меня, я его только на скриншотах разглядывал.

Ответить | Правка | Наверх | Cообщить модератору

269. "Опубликованы тесты простейших приложений на различных языках..."  +2 +/
Сообщение от Урри (?), 09-Дек-19, 04:11 
Если бы вы не писали с таким пафосом, словно вы суперпрофессионал, при этом неся чушь - я бы спокойно прошел мимо. А так вы каждым предложением подчеркиваете что диванный эксперт без опыта, но зато гонору как у гейтса.

поотвечаю как и вы, по пунктам:

> У меня его нет. И покупать его я не собираюсь. Нафиг он мне сдался? ... Какое мне дело до апи разных осей?

Мб такое, что если вы не в курсе - то нечего и лезть со своим мнением туда, где в курсе? Я вот пишу для всего этого; причем одновременно и для того, чего еще не выпустили - куча ифдефов, интринсики% совсем изредка ассемблерные вставки. И я знаю о чем говорю.

> Что ещё больше забавляет, из десяти этих программистов, девять не умеют кодить.

Я рад что вас эти 9 забавляют. Им это и рассказывайте. А я тут при чем?

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

Во-первых, процессов и их взаимодействия в ДОСе не было. PSP - это Program Segment Prefix, а не Process. Никакой мультизадачности, никаких мьютексов с семафорами; никакой реентерантности - все ручками через локи и велосипеды. И да, я в курсе резидентных программ - разошедшаяся тулза по убиванию программ по Ctrl+Alt+Del - моя работа. Помните такую?

> Дос полагался на биос, а биос настолько тормозно выводит на экран, что его использовать допустимо только в примерах в первой половине учебника.

И вы, конечно же, реализовали свои функции для CGA, Hercules, VGA и всех их режимов? И это все отлично умещалось в сотню байтов - у нас же дискетки еще большие но маленькие, места обмаль.

>> Были справочники...
> Да-да.

Забавно, что вы не верите в существование такого справочника.

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

Во-первых, не можешь. Любую математику из любого кодека в ассемблерном виде вам будет не по силам отладить ни за год, ни за пять - алгоритмы сложнее хелловорлда из асма не восстанавливаются. Любые ошибки по двойному освобождению памяти - тоже. И т.д. и т.п.
Хотя в вашей малинке, где программы по 100 байт размером и ничего такого нет - может быть, может быть...

> Но не в линуксе, потому что в линуксе нет софта, заточенного под отладку без отладочной информации. Так понятнее стало?

А, так вы хакир. Так бы сразу и сказали..
Ну да, аналога ollydbg (x32dbg) в лине действительно нету. Но он там и не нужен, ибо есть исходники и никто не запрещает самому собрать с отладочной информацией. А дальше gdb с фронтэндами.

Ответить | Правка | Наверх | Cообщить модератору

277. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Аноним (166), 09-Дек-19, 06:52 
> - алгоритмы сложнее хелловорлда из асма не восстанавливаются.

Ложное обобщение.

Ответить | Правка | Наверх | Cообщить модератору

298. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Урри (?), 09-Дек-19, 11:10 
Попытка съехать на буквоедстве.
Ответить | Правка | Наверх | Cообщить модератору

349. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Аноним (166), 09-Дек-19, 20:04 
> Попытка съехать на буквоедстве.

Да лан, расслабься. Если ты не способен восстановить алгоритмы сложнее хелловорлда из асма, это многое объясняет. ;)

Ответить | Правка | Наверх | Cообщить модератору

286. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Anonymoustus (ok), 09-Дек-19, 09:54 
>>> Были справочники...
>> Да-да.
> Забавно, что вы не верите в существование такого справочника.

Речь о справочнике по Win32 API? Да, был и есть. На сайте Майкрософта можно читать совершенно бесплатно:

https://docs.microsoft.com/en-us/windows/win32/api/

В открытом доступе есть также сконвертированные в CHM версии, о полноте и корректности оных не могу судить:

http://laurencejackson.com/win32/

http://sourceforge.net/projects/win32-help-chm/

Ответить | Правка | К родителю #269 | Наверх | Cообщить модератору

297. "Опубликованы тесты простейших приложений на различных языках..."  +1 +/
Сообщение от Урри (?), 09-Дек-19, 11:08 
При чем здесь винапи? Я писал про справочник интов - биоса, доса и дополнительного софта; всяких там БД, мышки, и кучи остального.
Ответить | Правка | Наверх | Cообщить модератору

326. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Совершенно другой аноним (?), 09-Дек-19, 14:02 
Был, да вроде и есть, правда в бумажном виде не видел, Ralf's Brown Interrupt List/
Ответить | Правка | Наверх | Cообщить модератору

308. "Опубликованы тесты простейших приложений на различных языках..."  –2 +/
Сообщение от Ordu (ok), 09-Дек-19, 12:15 
> Если бы вы не писали с таким пафосом, словно вы суперпрофессионал, при
> этом неся чушь - я бы спокойно прошел мимо. А так
> вы каждым предложением подчеркиваете что диванный эксперт без опыта, но зато
> гонору как у гейтса.

А, вы из этих, кому обязательно повоспитывать окружающих? Вы из тех, кто на дороге догоняет, обгоняет и ставит машину поперёк дороги тем, кто его подрезал, дабы потом рассказать им, как им следует и не следует водить автомобиль? SJW русского разлива? Вы видяшки снимаете, как вы это делаете? SJW в США когда тормозят родителей, чтобы поорать на них за то, что те ребёнка в машине на парковке оставили, когда отвозили корзину к супермаркету, снимают это на видео и потом выкладывают в интернет летопись о своих подвигах.

> поотвечаю как и вы, по пунктам:
>> У меня его нет. И покупать его я не собираюсь. Нафиг он мне сдался? ... Какое мне дело до апи разных осей?
> Мб такое, что если вы не в курсе - то нечего и
> лезть со своим мнением туда, где в курсе? Я вот пишу
> для всего этого; причем одновременно и для того, чего еще не
> выпустили - куча ифдефов, интринсики% совсем изредка ассемблерные вставки. И я
> знаю о чем говорю.

Какое мне дело до того, что вы там пишете? У меня складывается ощущение, что вам не удалось прочитать кусок беседу, предшествующий вашему вмешательству в неё.

>> Что ещё больше забавляет, из десяти этих программистов, девять не умеют кодить.
> Я рад что вас эти 9 забавляют. Им это и рассказывайте. А
> я тут при чем?

Меня забавляют не только 9, но и десятый тоже. Он отличается от этих девяти в лучшую сторону только тем, что умеет кодить, но это принципиально ничего не меняет.

>>> Начиная с того, что в досе был большой и стабильный список интов...
>> Ну, некоторые было сложно обойти, типа работу с файлами, или взаимодействие между процессами...
> Во-первых, процессов и их взаимодействия в ДОСе не было. PSP - это
> Program Segment Prefix, а не Process. Никакой мультизадачности, никаких мьютексов с
> семафорами; никакой реентерантности - все ручками через локи и велосипеды.

Ну да, да. Но я не помню всех этих терминологий и более того, не стремлюсь помнить, всё это давно быльём поросло и нафиг никому не нужно. Вы же поняли о чём речь?

> да, я в курсе резидентных программ - разошедшаяся тулза по убиванию
> программ по Ctrl+Alt+Del - моя работа. Помните такую?

Нет, простите. К тому моменту когда у меня появились интернеты, у меня стоял линукс, и дос я использовал к тому моменту исключитально в эмуляторе либо для запуска игрушек, либо для ностальгии.

>> Дос полагался на биос, а биос настолько тормозно выводит на экран, что его использовать допустимо только в примерах в первой половине учебника.
> И вы, конечно же, реализовали свои функции для CGA, Hercules, VGA и
> всех их режимов? И это все отлично умещалось в сотню байтов
> - у нас же дискетки еще большие но маленькие, места обмаль.

Это вы приводите для того, чтобы подтвердить мою позицию о том, что программирование для DOS -- это отстой, даже если писать на асме?

>>> Были справочники...
>> Да-да.
> Забавно, что вы не верите в существование такого справочника.

Почему не верю? Верю, но толку-то мне с них теперь? Вон даже у вас эти справочники пыляться на антресолях невостребованными. У меня тоже парочка пылится, я их купил было, когда денег начал зарабатывать, полистал, и... где-то они должны лежать, не нужные никому в силу ненужности доса.

>> Один из бонусов писания на ассемблере, что ты можешь отлаживать релиз не сложнее, чем отладочную сборку.
> Во-первых, не можешь. Любую математику из любого кодека в ассемблерном виде вам
> будет не по силам отладить ни за год, ни за пять
> - алгоритмы сложнее хелловорлда из асма не восстанавливаются.

Если эту математику найти в исходных текстах, то понять их не проще, чем в асме. И даже комментарии не помогают, ежели конечно они не в стиле literate programming, когда их можно скомпилять в статью-описание математики. Бывает что описание алгоритма на внятном русском языке не даёт понимания того, как алгоритм работает, и приходится несколько часов ломать голову.

> Любые ошибки по
> двойному освобождению памяти - тоже. И т.д. и т.п.
> Хотя в вашей малинке, где программы по 100 байт размером и ничего
> такого нет - может быть, может быть...

У меня складывается ощущение, что вы никогда не пытались отлаживать программу без дебаг-инфы. Я не спорю, это сложнее, но если исключить антиотладку как фактор (её нет или она успешно снята), то дальше нужна лишь небольшая поддержка со стороны софта, чтобы давать осмысленные для меня имена адресам, и тогда единственным принципиальным усложнением по сравнению с исходными текстами, остаются данные -- статическая память и структуры нигде не описаны. И если со статической памятью ещё худо-бедно можно разобраться, найдя все обращения к интересующему адресу, то со структурами такое не прокатывает.

Ну и да, это дос, детка. Там биос влезал в 1Mbit, вместе со всеми его прерываниями, настройками железа, ldt/gdt и прочими штучками. DOS целиком влезал на дискету, и ещё места оставалось. Чё там отлаживать?

>> Но не в линуксе, потому что в линуксе нет софта, заточенного под отладку без отладочной информации. Так понятнее стало?
> А, так вы хакир.

Как скажете.

> Ну да, аналога ollydbg (x32dbg) в лине действительно нету. Но он там
> и не нужен, ибо есть исходники и никто не запрещает самому
> собрать с отладочной информацией. А дальше gdb с фронтэндами.

Вот поэтому я и говорю, что у линя, как у платформы для написания на асме, есть недостатки. Не фатальные недостатки, но недостатки.

Ответить | Правка | К родителю #269 | Наверх | Cообщить модератору

356. "Опубликованы тесты простейших приложений на различных языках..."  +/
Сообщение от Ананимас009 (?), 10-Дек-19, 00:43 
Прерываниыми биоса для вывода текста никто и не пользовался. Серьезные поцанчики работали напрямую с видеопамятью, борясь со снегом для CGA. Ну или досовскими, если речь была про хелловорлд.
Ответить | Правка | К родителю #263 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру