возврат из подпрограмм

Jun 04, 2006 Last reply: 19 years ago 3173 Replies

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Slav Matveev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Wed, 28 Jun

2006 10:17:09 +0400:

DO>>>> Проц в модеме не справлялся. SM>>> А как же у меня мотороловский модем 256к выдавал? там был SM>>> особый проц, недоступный другим производителям?

DO>> А мой нынешний уж не знаю на чем сделанный, 2.5 мега сейчас выдает, DO>> а когда следующая распродажа будет, так и до 8М выдаст.

SM> А 8 гигабит по этой меди он потянет если ему тактовой SM> частоты добавить?

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

SM>>> флеши, конечно, он играть медленно будет. И развесистые css

DO>> Да какие там флеши, повесь на компьютер e-mule и ты увидишь куда DO>> девать скорость процессора.

SM> Я вижу. на двух гигагерцах idle time 97%. я, правда, перед SM> собой задачу "выкачать весь интернет" еще никогда не ставил.

А я периодически вижу вообще не реагирующий на внешние раздражители компьютер. Загрузка 100%. На PIII-500 и около того.

DO>> Заставь его еще и NAT'ом поработать простейшим (internet sharing) и DO>> обнаружишь, что почему-то все очень медленно приезжает. И не на DO>> PI-200, а на Celeron 733M. SM> bash-2.04$ cat /proc/cpuinfo | egrep "name|MHz" SM> model name : Celeron (Coppermine) SM> cpu MHz : 697.752 bash-2.04$ uptime 11:27am up 225 days, SM> 9:07, 3 users, load average: 1.30, 1.01, 0.81

SM> nat, squid и прочие мелочи жизни. свои 5 мбит честно лопатит. SM> Через него полсотни клиентов ходят.

А теперь запусти на нем e-mule, дай ему 500 коннекшонов открыть и посмотри что будет. Да под виндой, а не под линухом, там иногда и виндовые программы надо пускать.

SM> 11:36:10 (223.81 KB/s) - `linux-2.0.1.tar.bz2' saved [4736116]

SM> PIII-1000 в таких же условиях лопатит 10Мбит.

SM> Хотя всем понятно что PC это не специализированный маршрутизатор SM> и никаких дополнительных dsp для обработки траффика не имеет, и SM> под лозунгом "ускоряет интернет" не подразумевается SM> интернет-шаринг.

Подразумевается, что показ страничек и скачивание файлов становится быстрей. Это так и есть.

dima

formatting link

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Slav Matveev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Wed, 28 Jun

2006 12:27:10 +0400:

SM>>> и у интела другие процессоры знаю. и у неинтела другие SM>>> процессоры знаю.

DO>> Тогда должен понимать кому нужна их скорость и почему она интернет DO>> ускоряет.

SM> Ускоряет железо у провайдера, а не железо у пользователя.

Ускоряет и то и другое. Да и не появится у провайдера железо, если его нет у пользователя.

SM> Сам по себе процессор не сможет ничего ускорить, если до SM> провайдера 1200/NONE, и сам по себе процессор не сумеет рисовать SM> красивые картинки с приемлимым fps'ом, пока ему рядом не SM> поставят радеон или нвиду.

Ты процессор только один знаешь - центральный Пентиум?

SM> Производительно процессора рано или подздно упирается в SM> производительность остального железа. Ты заметишь разницу между

И процессор и остальное железо - суть одна и таже технология. Ускорение одного позволяет ускорять и другое.

SM> 5 секунд на закачку и 2 на рендеринг страницы и 5 секунд на SM> закачку и 1 на рендеринг страницы?

SM>>> давай ты просто признаешь что 32к - это ограничение голосового SM>>> тракта традиционной телефонии, а не порог производительности SM>>> железа даже в те годы?

DO>> А я разве с этим спорю? SM> ты очень неудачно сказал про 2.5М по тем же проводам.

Очень удачно. По тем же самым проводам. Я же не другу Васе по коммутируемой линии модемом звоню, а к ISP по телефонным проводам подключаюсь.

DO>> Однако никакого ADSL в те годы не было, а уж мобильного интернета DO>> и подавно.

SM> Были другие технологии передачи данных на физике типа SM> "медная пара", и оконечное оборудование, как не странно, тоже SM> называлось модемами.

Где были эти технологии? А сейчас ADSL - в каждом доме.

SM>>> И что большую часть времени у тебя процессор крутит задачу SM>>> idle time, только один процессор тратит на нее 99% SM>>> времени, а

DO>> Какой процессор, где у меня? Процессоры модема и роутера крутят DO>> отнюдь не Idle, свои гигабайты в сутки они прокачивают. Процессоры DO>> сервера тоже не спят.

SM> упомянутый мной celeron с nat'ом и squid'ом с провайдера SM> прокачивает с 10-00 до 23-00 ~3Gb в сутки. с двух вебкамер по SM> 8-9 гиг в сутки. конечно, проц не спит, но и не особо SM> утруждается. во всяком случае если туда поставить более шустрый SM> проц, он не ускорит работу до заметного уровня, а лишь увеличит SM> idle time.

А если туда PI-200 поставить, то все колом встанет. А если в веб-камеру поставить 8051 на 12МГц, то даже слайд-шоу не получится. А если сегодня продают 3GHz а три года назад продавали 1GHz, а 6 лет назад - 0.5, то это вовсе не основание каждый год выбрасывать старое и ставить новое и кричать что ничего быстрей не стало. Вот если это раз в 5-6 лет делать, то увидишь как стало.

SM>>> второй всего лишь 95%. И пока дело не дошло до числомолотилок

DO>> Зачем молотилки, игрушку не самую современную запустил - и опаньки, DO>> процессора не хватает, остального тоже.

SM> Современная игрушка - числомолотилка. Вернее большинство SM> современных игрушек числомолотилки. Причем очередное повышение SM> fps заметит только синтетический тест или профессиональный SM> геймер. Получить ты 500 fps вместо 100 fps. Ты разницу заметишь?

Я - не геймер. Но ребенок не может играть в свои игрушки ни на одном из тех

5-6летних компах, которых мне вполне хватает для игр в мои. А если я вдруг увлекусь видеомонтажом, то скорости никакой из имеющихся сегодня на рынке за разумные деньги не покажется много.

SM>>> разница в производительности процессоров благополучно SM>>> съедается перефирией.

DO>> А там свои процессоры, и их тоже все быстрей и быстрей делают.

SM> Сравни скорость доступа к кэшу, оперативке и винчестеру. SM> Есть физический и технологический предел, который никакой SM> процессор не сможет ускорить.

Про пределы я давно слышу, да только реальные недорогие решения все время их каким-то образом прорывают.

dima

formatting link

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Slav Matveev! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Wed, 28 Jun

2006 10:04:58 +0400:

DO>> Да не тянется ax'овая арифметика, и архитектура очень далеко ушла.

SM>>> решить вопрос совместимости. SM>>> какой-нибудь виртуальной машиной или сопроцессором?

DO>> Оно так фактически и есть.

SM> Какой виртуальной машиной? dosbox'ом?

Нет, это в железе процессора.

dima

formatting link

Хайль Гитлеp капyт, Vladimir! Сpеда Июнь 14 2006 18:18, Vladimir Vassilevsky wrote to Igor Havtorin:

IH>> Я тоже пользовал MultiEdit с пеpвого "Фотона" до девятой веpсии IH>> MEW, но потом пеpешел на IDE от пpоизводителя, VV> Именно так. Cначала я пользовался ME, потом стал запyскать IDE VV> и pедактиpовать файлы в ME, а потом пpишло сакpальное понимание, VV> что MЕ не нyжен. VV> Чтобы использовать ME, нyжно его сконфигypить и pазбиpаться VV> с конфигypацией компилеpа, линкеpа и пp. для pаботы с командной VV> стpоки. Зачем тpатить вpемя и yсилия на боpьбy с чеpт-те какими VV> опциями. Hy, вообще оно полезно. Хотя я пpошел тот же пyть и не жалею.

IH>> да и ypовень многих IDE достаточен для ноpмальной pаботы VV> Вот именно. Cтандаpтный виндоyсовый pедактоp со стандаpтным набоpом VV> клавиш. Жаль только, что VDSP не совсем совместим по кнопкам с MSVC. А то вообще была бы песня.

Майкл

Веpишь ли Вы в жизнь после топки, Dmitry? Сpеда Июнь 14 2006 20:44, Dmitry Orlov wrote to Vladimir Vassilevsky:

VV>> Посколькy такие пpоблемы слyчайны и зависят от экземпляpа VV>> железа, то их тpyдно выловить. Так что с пpинyдительным обнyлением VV>> не только bss, но и всей памяти я согласен. DO> Так и я согласен пpи наличии модификатоpа persistent запpещающего DO> инициализацию конкpетной пеpеменной. А так мне необходимо было после DO> pесета пpодолжать выполнение пpогpаммы с того же места (состояния) в DO> котоpом этот pесет настyпил, а как это сделать с автоматически DO> обнyляющимися или инициализиpyющиеся пеpеменными я не пpидyмал.

Класть ее в дpyгой сегмент, котоpый не обнyляется твоим стаpтапом.

Майкл

Веpишь ли Вы в жизнь после топки, Vladimir? Сpеда Июнь 14 2006 20:59, Vladimir Vassilevsky wrote to Dmitry Orlov:

DO>> А так мне необходимо было после pесета пpодолжать выполнение DO>> пpогpаммы с того же места (состояния) в котоpом этот pесет DO>> настyпил, а как это сделать с автоматически обнyляющимися или DO>> инициализиpyющиеся пеpеменными я не пpидyмал. VV> Каким обpазом ты отличаешь валидные persistent пеpеменные от VV> слyчайных (и к томy же зависящих от экземпляpа) значений, котоpые VV> оказываются в них по холодномy стаpтy?

Хоpоший кстати вопpос... У меня так и не полyчилось пpидyмать способ 100% отличить сбpос с пеpедеpгиванием питания от пpогpаммного и аппаpатного на наших любимых ADSP (без использования внешних микpосхем).

Майкл

Веpишь ли Вы в жизнь после топки, Dmitry? Сpеда Июнь 14 2006 21:51, Dmitry Orlov wrote to Vladimir Vassilevsky:

VV>> Каким обpазом ты отличаешь валидные persistent пеpеменные от VV>> слyчайных (и к томy же зависящих от экземпляpа) значений, котоpые VV>> оказываются в них по холодномy стаpтy? DO> Двyмя способами. Во-пеpвых, y меня часто есть аппаpатный пpизнак DO> холодного стаpта. Во-втоpых, есть пеpеменная с некой сигнатypой.

Разpядность и пpинцип выбоpа сигнатypы?

Майкл

Взять от cygwin тот минимум, (её dll, libc, sh и другие используемые программы и библиотекии), которые нужен для работы твоих программ. Прикладывать в комплекте. При чём тут операторы -- я вообще не понимаю. Они запускают "приложение" и работают с ним. А cygwin там внутри или hyperterminal -- кому какое дело? (впрочем, дело может быть, в GPL).

cygwin'овский printf выводит зелёным цветом, как и положено. Почему в visual c не так не понимаю. Если write'ом в stdout писать -- что не работает?

Перечитал, ничего не понял. Я тебе сказал, как можно сделать, чтоб буковки и циферки нужным, цветом из твоей BSD показывались. А ты мне про какие-то сущнсти. И какое оно имеет отношение к персоналу я вообще не понимаю.

Юзеру даётся "приложение". В нём (GUI вариант) несколько кнопок или (консоль) ряд команд. Выдаётся инструкция по эксплуатации -- какие кноппки нажимать. ВСЁ. Чёрт там с вилами внутри или лично Билл Геитс -- дело десятое. А в данном случае все настройки записываются в ~/.profile.

Отлично! Интерфейс нарисуешпь на тикле, на expect напишешь сценарий работы с BSD, откуда собственно будут вызываться, в нужное время, sz, rz, и откуда же будет весь ввод-вывод скармливаться в виндовую консоль

-- терминалка вроде как (expect умеет параллельно с пользователем работать). Как там прикрутить лучпе консоль, посмотри как у active state сделано -- у них свой expect для виндов, адаптированный. Вот ещё, это наверное проще будет:

formatting link
Более того, как я понял, в cygwin уже есть работающие rz и sz. Ты решение работающее для unix получить можешь? Оно будет работать и в cygwin.

ZOC стоит $. А воровать -- порочный путь.

Нормальные программы работают с любым размером окна. С любым разумным размером.

Я вообще не понимаю зачем нужна консольная эмуляция GUI в наше время. ncurses потеряло всякий смысл уже лет 10 как. Сейас модно или полноценный GUI, или, на худой конец, web-интерфейс.

Только классический vt100 имеет 24 строки. Хочепшь curses, должен бы это учитывать.

Есть какой-то алгоритм рисования. Следовательно его можно реализовать программно.

Hello, Michael! You wrote to Alexandr Torres on Tue, 27 Jun 2006 21:43:04 +0400:

MB> Пpивет, Alexandr.

MB> Вот что Alexandr Torres wrote to Dimmy Timchenko:

DT>>>>> Я для 51-х писал на ассемблеpе,

DO>>>> Я тоже в начале на ассемблеpе писал. Hачинал я вообще с DO>>>> пpогpаммиpования 8080 в кодах - ассемблеpа y меня не было.

DT>>> О! Я тоже начинал с 8080. Только y меня была машинка DT>>> "Электpоника-К1-30", с алфавитно-цифpовым теpминалом и дисководом DT>>> на

AT>> Это вам кpyпно повезло - я когда-то написал пpошивкy для клавиатypы AT>> в машинных кодах, "ассемблиpyя" на бyмаге, для 48-го.... AT>> А 48-й, я вам замечy, это не 51-й....

MB> Я - то же, но для 8080. И далеко не однy пpогpаммy. MB> Комy повезло? ;-)

Для 8080 я делал аналогичное, на "Микро-80", пока ассемблер не принесли. Но во 1-х, возня с 48-м была позже, во 2-х - 8080 просто сказка по сравнению с 8048....

[ Жамству бой ! ]

2:461/28, E-mail: snipped-for-privacy@yahoo.com

formatting link

А что такое DOS (Denial of Service?)

Дискеты? Это что-то вроде глиняных табличек?

5.25 -- мой CD-ROM их не читает.

Hello George.

27 Jun 06 10:22, you wrote to Vladimir V Teplouhov: GS> Четверг Июнь 22 2006 21:43, Vladimir V Teplouhov wrote to Vladimir GS> Vassilevsky:

VV>>> AFAIR начале века NEC демонстрировал технологию ~3 nm с частотой VV>>> ~200GHz. VV>>> Вопрос только в том, какова роль таких технологий на маркете и VV>>> кто готов VV>>> заплатить за доведение технологии до mass production. VT>> да само доедет постепенно :) VT>> Развитие в 2 раза в год вроде еще никто не отменял...

GS> Ты всё проспал. "Гонка гигагерцев" как раз закончилась GS> и началась гонка многоядерных технологий...

не-а, ни угодал :) Рост степени интеграции как раз был всегда. Производительность и объем росли в 2 раза в год, а частота все-же медленнее - обычно раза в 1.5 подымали за счет частоты, а остальное за счет уменьшения тактов на команду, увеличение разрядности и тд и тп. Число АЛУ растет начиная с п1, так что многоядерность это мелкие детали...

Vladimir

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, Kirill Frolov! You wrote in conference fido7.ru.embedded to Anatoly Mashanov on Wed, 28 Jun

2006 16:36:55 +0000 (UTC):

KF> cygwin'овский printf выводит зелёным цветом, как и положено. KF> Почему в visual c не так не понимаю. Если write'ом в stdout писать KF> -- что не работает?

Нет, не работает...

dima

formatting link

Hello, Pavel! You wrote to Pavel Lunkov on Wed, 28 Jun 2006 09:21:52 +0400:

PG> Пpивет Pavel! PG> Pavel Lunkov --> Vladimir V Teplouhov ( Tue Jun 27 2034, 18:15 PG> )

PL>> Хм ... кстати где цифровые осциллографы по 100$

PG> О! Я, кстати, договаpивался часть pаботы сделать.

PG> Hо в эхе тогда шла война - сейчас можно и pазвеpнyть пpоектик для PG> обсyждения.

PL>> Деньги на 5 штук до сих пор придержаны :)))

PG> 500$ - можно начинать! (коммеpция - офтопик, мылом :)

Попробуй также начать с Треплоуховым и остальные его "проекты". Сколько лет можно ждать?!

With best regards, Alexandr Torres.

[ Жамству бой ! ]

2:461/28, E-mail: snipped-for-privacy@yahoo.com

formatting link

 X-Virus-Scanned: amavisd-new at bezeqint.net

Hello, All! You wrote in conference fido7.ru.embedded to Pavel Lunkov on Wed, 28 Jun

2006 09:21:52 +0400:

PL>> Хм ... кстати где цифровые осциллографы по 100$

PG> О! Я, кстати, договаpивался часть pаботы сделать.

PG> Hо в эхе тогда шла война - сейчас можно и pазвеpнyть пpоектик для PG> обсyждения.

PL>> Деньги на 5 штук до сих пор придержаны :)))

PG> 500$ - можно начинать! (коммеpция - офтопик, мылом :)

На этот союз убогих смотреть тошно...

dima

formatting link

Wed Jun 28 2006 09:54, Nickita A Startcev wrote to Vladimir Vassilevsky:

VV>> С системой команд x86 есть ровно одна серьезная проблема: переменная VV>> длина кода операции вместе со всеми преффиксами. То, что одна команда VV>> может занимать от 1 до 9 байт,

NAS> afaik больше девяти: префикс сегмента, пара префиксов разрядности, NAS> какое-нибудь умножение на 32 битную константу с одним из операндов в NAS> памяти уже даст минимум 4+4+2+префиксы, то есть, 12 байт.

Еще lock и rep преффиксы. Cлабо придумать самую длинную команду?

VV>> приводит к чудовищной структуре VV>> пайплайна, и к большому оверхеду. Из-за этого в P-4 пришлось забить на VV>> 8 и 16-битные команды.

NAS> А можно про забитие поподробнее?

На мой ламерский взгляд, торможение P-4 на 8/16 битных командах вызвано тем, что просто cьэкономили на разборке их в пайплайн. Уж очень криво все получается, если разбирать любые команды.

VLV

"Любите книги - в них видно фиги" (c)

Wed Jun 28 2006 19:55, Michael Mamaev wrote to Vladimir Vassilevsky:

VV>> Каким обpазом ты отличаешь валидные persistent пеpеменные от VV>> слyчайных (и к томy же зависящих от экземпляpа) значений, котоpые VV>> оказываются в них по холодномy стаpтy?

MM> Хоpоший кстати вопpос... У меня так и не полyчилось пpидyмать способ 100% MM> отличить сбpос с пеpедеpгиванием питания от пpогpаммного и аппаpатного на MM> наших любимых ADSP (без использования внешних микpосхем).

Почему же. Можно придумать область переменных с журналированием, чексуммами, резервными копиями и пр. Это гемор и тормоза, зато будет вполне надежно при передергивании питания. VLV

"Любите книги - в них видно фиги" (c)

Thu Jun 29 2006 08:39, Anatoly Mashanov wrote to Kirill Frolov:

KF>> Я вообще не понимаю зачем нужна консольная эмуляция GUI в наше KF>> время. ncurses потеряло всякий смысл уже лет 10 как. Сейас модно KF>> или полноценный GUI, или, на худой конец, web-интерфейс.

AM> Дивайс должен работать после плавления почвы на месте бывшего Пентагона AM> (Во всяком случае, хотя дивайс и использует GPS, но на случай падения GPS AM> предусмотрена пара водородных мазеров, на работающем макете используется AM> цезий). Ты уверен, что после плавления Пентагона будет работать AM> полноценный гуй или веб-интерфейс? Я - нет.

1) После плавления Пентагона _некому_ будет интересоваться работоспособностью девайса. :-))

2) Цезий и интерфейс - две абсолютно перпендикулярные вещи. Одно с другим _никак_ не связано.

"Resistance is futile"

Wed Jun 28 2006 09:31, Pavel Grishin wrote to Alex Kouznetsov:

AK>> Что умеет твое ядро в 100-500 байт?

PG> СЛОВАРЬ - он и в Си словаpь. (я этy стоpкy подчёpкиваю)

То есть, Форт непричем? Если я организую словарь, то смогу делать C/asm программы компактнее, так что ли?

PG> Повтоpюсь. Беpи пpимитивы и pасти словаpь/пpогy кyда надо.

Повтоpюсь. Какие примитивы должны быть включены в ядро в 100-500 байт?

PG> #_И_ВОТ_ИМЕHHО_ЭТОТ_РОСТ_HЕОБЫЧАЙHО_КОМПАКТЕH_#

Из-за чего он компактен в Форте, но не компактен в С или ассемблере?

PG> Что отличает ФОРТ от остальных языков - фактически дpyгая ветвь в PG> пpогpаммиpовании. Hе из-за Фоpта, а после Фоpта был взpыв ООП. PG> Какие мне слова (а до этого были аpгyменты, котоpые ты отбpосил) PG> сказать ещё для "достyчатся до твоего pазyма"? PG> Учитывая пpо твою испоpченность Си :) - сходи по ссылке PG> и yясни пpостyю весчь - _ФОРТ_очень_компактен_. PG> И эта фpаза не с пyстого места - это главный аpгyмент ФОРТА!

Не надо лозунгов и агиток, просто ответь на вопрос: что умеет твое ядро в

100-500 байт?

Пока, Алексей

Hello Kirill!

28 Jun 06 19:42, you wrote to me:

KF> Только классический vt100 имеет 24 строки. Хочепшь curses, должен бы KF> это учитывать. Видимо, придется учесть. Так будет проще, чем перебирать кучу терминалок. >> рисовать отдельный скин (Точнее, комплект из в общей сложности 103 KF> Есть какой-то алгоритм рисования. Следовательно его можно KF> реализовать программно.

Конечно. Сгруппировать параметры на экране так, чтобы они были расположены удобно, эстетично и эргономично. Затем добавить заголовки типа "ТЕКУЩАЯ ФАЗА" "УСТАВКА ФАЗЫ" "ИЗМЕРИТЕЛЬ ОБЩЕГО HАЗHАЧЕHИЯ", "МОДИФИЦИРОВАHHАЯ ЮЛИАHСКАЯ ДАТА" или "РАЗHИЦА МЕЖДУ GMT и UTC В СОТЫХ ДОЛЯХ СЕКУHДЫ". Обвести рамочками, если хватит места. Hаконец, показать начальнику, метрологу и паре операторов, получить комментарии, вернуться к началу.

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

Anatoly

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required