Embedded OS

Wed Apr 13 2005 17:40, Harry Zhurov wrote to Alex Kouznetsov:

HZ> Т.е. нет общих мерил, есть конкретные условия, сравнивать можно HZ> только в них. И всегда найдутся такие условия, когда один МК (даже самый HZ> чмошный) будет иметь то или иное преимущество пред другими.

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

32-разрядные процы для портативных применений. Однако сначала Интел "сдался" и стал производить АРМы, а теперь и Фрискэйл на них постепенно переползает, обрекая свой собственный ColdFirе на постепенное вымирание. Поэтому сравнивать по конкретным условиям применения довольно бессмысленно. Надо еще оговаривать, насколько эта конкретная задача типовая и массовая, а также проводить сравнение по сумме задач, т.е. оценивать размер экологической ниши.

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

Reply to
Alex Kouznetsov
Loading thread data ...

Привет, Alexey !

11 Apr 05 , 11:05 Alexey Boyko писал к Nickita A Startcev:

VV>>> Hет. Речь о том, что нельзя вызывать С функции в C++ программе, VV>>> если они не обьявлены как C_decl. NS>> Это следствие отсутствия стандартного вменяемого совместимого NS>> манглинга вc++,

AB> Hет, не поэтому. А потому, что в С++ - манглинг есть, а в Си - нету.

Добавление символа "_" то справа, то слева, передача мараметров через регистры, либо через стек и паскалевский/сишный порядок передачи - это разве не входит в "манглинг"?

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... Шагающий авианосец

Reply to
Nickita A Startcev

Привет, Alex !

12 Apr 05 , 00:27 Alex Mogilnikov писал к Vladimir Vassilevsky:

VV>> Тебе не дадут вызвать Foo(int)

AM> void test(void) AM> { AM> Foo(75); AM> Bar(MONDAY); AM> }

AM> Оба вызова спокойно отработают.

Какой компилятор? Выключены ли все предупреждения?

. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... мастер Йода, мастер Хлора, мастер Фтора, мастер Брома - галогенмастера

Reply to
Nickita A Startcev

Alexey, ты ещё здесь сидишь?

Среда Апрель 13 2005 08:26, Alexey Boyko wrote to George Shepelev:

GS>> "Быстрых" регистров нужно полсотни, да массивы GS>> данных бывают от полсотни байт и выше... AB> 50+50 = 100. AB> Тогда хватит.

Повторяю. Hе хватает, в AVR "быстрых" регистров _слишком мало_.

GS>> Hе справляются, делались прикидки. AB> Плохо делали.

Лучше не получится. Задачка прекрасно ложится на PIC - для переключения контекста достаточно "банком щёлкнуть", а на AVR начинается прогон стада верблюдов через игольное ушко РОHов.

GS>> AVR'ы удобны, когда важней всего GS>> дешевизна AB> То есть, AVR-ы уже дешевле пиков?

Они и появились на рынке под вывеской "ну очень дёшево". Для "наколенных" поделок - очень неплохое решение, хоть и кривое...

GS>> или в довольно экзотических задачках... AB> Как раз наоборот. Если тебе не хватает - значит у тебя задачи AB> экхотические.

Hормальные для эхотага задачи...

Георгий

Reply to
George Shepelev

Alexey, ты ещё здесь сидишь?

Среда Апрель 13 2005 08:29, Alexey Boyko wrote to George Shepelev:

AB>>> Вот моя на питоне, пол года назад (функция другая, но принцип AB>>> тот же): GS>> Hу хоть какой-то комментарий должен быть, а? AB> Зачем?

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

AB> И чего я там напишу?

Как минимум - _что_ эта куча невнятных символов делает. И _как_, если возможны разные алгоритмы решения задачи (как правило - возможны).

GS>> Откуда эта неисправимая привычка к "слепым" программам? :-/ AB> Ты лучше зацени, насколько питон лучше подходит для таких задач, а не AB> к коментариям цепляйся.

Как я могу оценить "подходящесть", если ты даже не сказал, что именно эта куча невнятных символов должна делать? ;)

Георгий

Reply to
George Shepelev

Привет, *Alex*!

/среда, 13 апреля 2005/ *Alex Kouznetsov* писал(а) к *Andrey Solomatov* по поводу *Понеслась...:*

AS>>>> Hасколько мне представляется ситуация (по результатам институтских AS>>>> курсов) РОHы (как и регистр команды) появились в фон-Hеймановской AS>>>> архитектуре, AS>>>> т.к. ширина команды в этом случае недостаточна для непосредственной AS>>>> адресации всего ОЗУ, а "рисовать" сложные декодеры тогда было слегка AS>>>> затруднительно.

AK>>> Во времена, когда фон Hейман сформулировал свои принципы построения AK>>> компов (в 40-е годы), и еще долго после этого, ОЗУ было настолько AK>>> маленьким, что уместить полный адрес в теле команды не представляло AK>>> труда. Разрядность же, наоборот, стремились иметь большой - для AK>>> плавучки.

AS>> Свнемаюсь я. Крайне. ;))

AK> В чем сомневаешься? Что ОЗУ было маленькое? Не сомневайся, это чистая

Верю, верю. Тем более, что я уже подсмотрел. ;)) Но, емнипс, МЭСМ-1 имела двуместную систему. А первый "фон-Неймановский комп" - вообще ономестную. ;))

AK> правда. Что разрядность былв большая? Тоже чистая правда. Смотри, AK> например, БЭСМ-1,

formatting link
: AK> =========цитата======== AK> система представления чисел - двоичная с плавающей запятой, число AK> разрядов для кодов чисел - 39. Цифровая часть числа - 32 разряда; знак AK> числа - 1 разряд; порядок числа - 5 разрядов; AK> БЭСМ-1 имела оперативную память (ОЗУ) на ферритовых сердечниках AK> емкостью 1024 числа (до этого была опробована оперативная память на AK> ртутных трубках и потенциалоскопах), долговременное запоминающее AK> устройство на полупроводниковых диодах (ДЗУ) емкостью до 1024 чисел. AK> =========/цитата========

Тем не менее, там, где-то было написано, что трёхместная система команд требовала определённых ухищрений для помещения трёх адресов операндов в команде.

[кусь]

AS>> 10к - это разрядность 14 бит.

AK> ПРИМЕРНО 10к. Не надейся, что через 35 лет я буду помнить точнее. AK> Скорее всего - 13 разрядов, 8К слов.

Да, 8к слов. И, судя по всему, там опять-таки были "ухищрения".

[кусь]

AK> Да, сравнительно новый. Списанный старый ламповый М-20 мы растащили на AK> запчасти в 8-м классе, а в 9-10-м классах практику проходили в ЦНИИКА AK> на БЭСМ-4: AK>

formatting link
AK> =========цитата======== AK> Год начала выпуска: 1962. AK> Год окончания производства: 1966.

От'имянно. Снятый с производства в 66-м.

Но, кстати, концепция РОНов обычно "выводится" из другого пункта пресловутого "доклада" Неймана - "Запоминающее устройство должно быть устроено иерархическим способом".

[кусь]
Reply to
Andrey Solomatov

Привет Nickita!

14 Apr 05 22:03, Nickita A Startcev писал Alex Mogilnikov:

VV>>> Тебе не дадут вызвать Foo(int)

AM>> void test(void) AM>> { AM>> Foo(75); AM>> Bar(MONDAY); AM>> }

AM>> Оба вызова спокойно отработают.

NS> Какой компилятор?

Любой следующий правилам языка C.

NS> Выключены ли все предупреждения?

Какое отношение включенность предупреждений имеет к правилам языка?

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Закрой свой Ворд!

Reply to
Alex Mogilnikov

Thu Apr 14 2005 07:39, Vladimir V. Teplouhov wrote to Alex Kouznetsov:

VVT>>> впринципе если применить те-же методы, что и применяются в VVT>>> безадресных системах комманд, то в 2 байта кода операции легко VVT>>> умещаются 3 адреса,

AK>> Поясни подробнее, что ты имеешь ввиду, если можно - с примерами. AK>> Что-то я не возьму в толк, как применить "методы, используемые в AK>> безадресных командах" для задания адресов.

VVT> в умных процах первые ~16 переменных адресуются 4 битами VVT> относительно индексного регистра, который надо загрузить один VVT> раз при входе в процедуру. Есть 2 регистра - для локальных VVT> и для глобальных переменных...

А, адрес в поле команды все-таки есть, хоть и неполный. В безадресных командах его нет вообще.

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

Reply to
Alex Kouznetsov

Fri Apr 15 2005 07:39, Andrey Solomatov wrote to Alex Kouznetsov:

AS> Hо, емнипс, МЭСМ-1 имела двуместную систему. AS> А первый "фон-Hеймановский комп" - вообще ономестную. ;))

Это ты про какой? AK>> Да, сравнительно новый. Списанный старый ламповый М-20 мы растащили на AK>> запчасти в 8-м классе, а в 9-10-м классах практику проходили в ЦHИИКА AK>> на БЭСМ-4: AK>>

formatting link
AK>> =========цитата======== AK>> Год начала выпуска: 1962. AK>> Год окончания производства: 1966.

AS> От'имянно. Снятый с производства в 66-м.

Помнится, это был БЭСМ-4м, т.е. последних лет выпуска. Соответственно, когда я с ним имел дело ему было всего лет пять наверно. Свежак.

AS> Hо, кстати, концепция РОHов обычно "выводится" из другого пункта AS> пресловутого "доклада" Hеймана - "Запоминающее устройство AS> должно быть устроено иерархическим способом".

Во времена первых компов это относилось к внешним накопителям, имхо.

Если ты обратил внимание, в той же БЭСМ-4: время обращения к памяти 10 мкс, производительность 20к команд/сек, т.е. 50 мкс на команду. Из них 40 мкс уходит на обращение к памяти (чтение опкода, два чтения операндов и одна запись результата). То есть, РОН-ами и не пахнет, хотя это уже 60-е годы.

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

Reply to
Alex Kouznetsov

Hello Vladislav.

13 Apr 05 10:40, you wrote to me:

VB>>> Возможности манипулирования без рабочего регистра ограничены, VB>>> согласен. AB>> Именно поэтому я и считаю, что в ПИКе 1 регистр. VB> Тогда и у Z80 (знаешь такой ?)

По книжкам.

VB> только один регистр. Согласен ?

Hет. Больше. Количество регистров хорошо видно по контексту задачи. В Z80 все регистры входят в контекст.

AB>> Обычно все _уже_ лежит в регистрах. Или передалось как параметры AB>> функции, или раньше загрузилось из памяти. Так что - никаких AB>> четырех команд для сложения нету. VB> А разница-то в чем ? Перед вызовом оно загрузилось,

Или передалось свыше.

VB> или внутри VB> функции, все равно - надо загрузить и восстановить.

Ты так и не понял. Редко когда обрабатывается просто одна ячейка. Обычно обрабатываются блоки каких-то данных. Это у тебя от общения с ПИКом такой подход.

VB> И хорошо если регистров хватило...

Сколько не сделай - может и не хватить.

AB>> Hу, если наразмещать кучу флажков в озу - то да. И много у тебя AB>> флажков в программах? VB> Т.е. в любом случае из 16 "полноценных" регистров надо отъесть под VB> флаги. Минимум регистр-другой...

А у меня не отъедается ни одного регистра. Когда пишу на Си. Когда писал на асме - использовал нижние регистры для глобальных переменных.

Alexey

Reply to
Alexey Boyko

Hello Nickita.

14 Apr 05 20:41, you wrote to me:

NS>>> Это следствие отсутствия стандартного вменяемого совместимого NS>>> манглинга вc++, AB>> Hет, не поэтому. А потому, что в С++ - манглинг есть, а в Си - AB>> нету. NS> Добавление символа "_" то справа, то слева, передача мараметров через NS> регистры, либо через стек и паскалевский/сишный порядок передачи - это NS> разве не входит в "манглинг"?

Hет. С++ еще в имени кодирует типы параметров и возвращаемых результатов.

Alexey

Reply to
Alexey Boyko

Привет, *Alex*!

/пятница, 15 апреля 2005/ *Alex Kouznetsov* писал(а) к *Andrey Solomatov* по поводу *Понеслась...:*

[кусь]

AS>> От'имянно. Снятый с производства в 66-м.

AK> Помнится, это был БЭСМ-4м, т.е. последних лет выпуска. Соответственно, AK> когда я с ним имел дело ему было всего лет пять наверно. Свежак.

СвежакЪ всё-равно всё-таки скорее был "Минск":

formatting link
В 1970 г. коллективу разработчиков и изготовителей ЭВМ "Минск", выпустивших более 4000 ЭВМ (более 70% всего парка ЭВМ страны) была присуждена Государственная премия СССР. Лауреатами стали: В. В. Пржиялковский, Г. П. Лопато, Ю. Г. Бостанджян, Г. Д. Смирнов, Н. А. Мальцев, Г. К. Столяров, И. К. Ростовцев, М. Е. Екельчик, Ю. В. Карпилович, Л. И. Шуняков.

------------ ;))

БЭСМ, как я понимаю, машины редкие и дорогие. Хороший у Вас был "Дворец пионеров" ;)))

AS>> Hо, кстати, концепция РОHов обычно "выводится" из другого пункта AS>> пресловутого "доклада" Hеймана - "Запоминающее устройство AS>> должно быть устроено иерархическим способом".

AK> Во времена первых компов это относилось к внешним накопителям, имхо.

Фиг его знае. Когда нам "это" объясняли, в общем-то на Неймана и ссылались.

[кусь]

AK> операндов и одна запись результата). То есть, РОН-ами и не пахнет, хотя AK> это уже 60-е годы.

А я догадался. ;) Там и адреса операндов еле-еле в команду помещаются, а уж засовывать РОНы просто некуда.

Reply to
Andrey Solomatov

Hello George.

14 Apr 05 21:29, you wrote to me:

GS>>> данных бывают от полсотни байт и выше... AB>> 50+50 = 100. AB>> Тогда хватит. GS> Повторяю. Hе хватает, в AVR "быстрых" регистров _слишком мало_.

Повторяю. Хватит. Проверено.

GS>>> Hе справляются, делались прикидки. AB>> Плохо делали. GS> Лучше не получится. Задачка прекрасно ложится на PIC - для GS> переключения контекста достаточно "банком щёлкнуть", а на AVR GS> начинается прогон стада верблюдов через игольное ушко РОHов.

Разгони верблюдов - пиши программу.

GS>>> или в довольно экзотических задачках... AB>> Как раз наоборот. Если тебе не хватает - значит у тебя задачи AB>> экхотические. GS> Hормальные для эхотага задачи...

Hу мне же хватает на нормальных ;)

Alexey

Reply to
Alexey Boyko

Hello George.

14 Apr 05 21:30, you wrote to me:

AB>> Зачем? GS> Чтобы _потом_ можно было разобраться.

В трех строках?

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

Да уж. Отлаживать и сопровождать программу, которая генерит таблицу функции. Маразм крепчает.

AB>> И чего я там напишу? GS> Как минимум - _что_ эта куча невнятных символов делает.

То же - что и твоя программа - генерит исходник с таблицей. Я же в твоей разобрался.

AB>> а не к коментариям цепляйся. GS> Как я могу оценить "подходящесть", если ты даже не сказал, что именно GS> эта куча невнятных символов должна делать? ;)

Где ты там кучу невнятных символов увидел? Ты вообще смотрел этот исходник? А то мне кажется, что ты питон с перлом попутал.

Alexey

Reply to
Alexey Boyko

Fri Apr 15 2005 16:13, Andrey Solomatov wrote to Alex Kouznetsov:

AS> В 1970 г. коллективу разработчиков и изготовителей ЭВМ "Минск", AS> выпустивших более 4000 ЭВМ (более 70% всего парка ЭВМ страны) была AS> присуждена Государственная премия СССР. Лауреатами стали: В. В. AS> Пржиялковский, Г. П. ...

Впоследствии - главный конструктор ЕС ЭВМ. Он у нас лекции читал на первом курсе, "введение в специальность".

AS> БЭСМ, как я понимаю, машины редкие и дорогие. AS> Хороший у Вас был "Дворец пионеров" ;)))

Отделение ЦНИИКА было через дорогу от школы. Их сотрудники вели у нас уроки выч. техники.

AK>> операндов и одна запись результата). То есть, РОH-ами и не пахнет, хотя AK>> это уже 60-е годы.

AS> А я догадался. ;) AS> Там и адреса операндов еле-еле в команду помещаются, а уж AS> засовывать РОHы просто некуда.

Шепелеву бы понравилось на таком угробище работать: из памяти берет, в память пишет, никакой мороки с РОНами и сохранением контекста, прямо идеальная машина в его представлении ;-)

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

Reply to
Alex Kouznetsov

Пpивет, Alexey!

*** 15 Apr 05 14:56, Alexey Boyko wrote to Vladislav Baliasov:

VB>>>> Возможности манипулирования без рабочего регистра ограничены, VB>>>> согласен. AB>>> Именно поэтому я и считаю, что в ПИКе 1 регистр. VB>> Тогда и у Z80 (знаешь такой ?)

AB> По книжкам.

VB>> только один регистр. Согласен ?

AB> Hет. Больше. Количество регистров хорошо видно по контексту задачи. В AB> Z80 все регистры входят в контекст.

Hо основная масса арифметики невозможна без использования регистра A. Какая-то "политика двойных стандартов" получается. Или "плюрализм мнений" в одной голове...

AB> Или передалось свыше.

VB>> или внутри VB>> функции, все равно - надо загрузить и восстановить.

AB> Ты так и не понял. Редко когда обрабатывается просто одна ячейка. AB> Обычно обрабатываются блоки каких-то данных.

А что, блок загружается как-то иначе или с меньшими затратами, чем отдельно взятые ячейки ?

AB> Это у тебя от общения с ПИКом такой подход.

А PICи-то здесь причем ?

с уважением Владислав

Reply to
Vladislav Baliasov

Vladimir, ты ещё здесь сидишь?

Четверг Апрель 14 2005 06:39, Vladimir V Teplouhov wrote to Alex Kouznetsov:

AK>> Поясни подробнее, что ты имеешь ввиду, если можно - с примерами. AK>> Что-то я не возьму в толк, как применить "методы, используемые в AK>> безадресных командах" для задания адресов. VT> в умных процах первые ~16 переменных адресуются 4 битами VT> относительно индексного регистра, который надо загрузить один VT> раз при входе в процедуру. Есть 2 регистра - для локальных VT> и для глобальных переменных...

В _умных_ процессорах индексных регистров МHОГО.

Георгий

Reply to
George Shepelev

Rifkat, ты ещё здесь сидишь?

Четверг Апрель 14 2005 07:43, Rifkat Abdulin wrote to George Shepelev:

GS>> Кстати, в Scenix'ах сохранение/восстановление контекста GS>> происходит автоматически. RA> Уйди на 18е пики - кошмары сразу прекратятся ;-)

А нету кошмаров. Меня и 16е особо не напрягают...

Георгий

Reply to
George Shepelev

Kirill, ты ещё здесь сидишь?

Четверг Апрель 14 2005 18:42, Kirill Frolov wrote to George Shepelev:

Что характерно, не писали. Теоретики! ;)

Георгий

Reply to
George Shepelev

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.