Re[2]: язык и железо для обучения
От: мыщъх США http://nezumi-lab.org
Дата: 03.04.15 22:02
Оценка:
Здравствуйте, cures, Вы писали:

C>Всё уже украдено до нас: малинка для чего-то похожего и придумана, насчёт Ц не уверен.

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

дебиан грузится ужасно долго. а вот arduino сразу же готов к работе. достаточно запрограммировать и все. программа будет стартовать автоматом при подаче питалова. у малинки есть GPIO, но в линух оно доступно через ЖПУ и нужно объяснять как адресное пространство портов памиться на виртуальное адресное пространство и как его юзать. ИМХО слишком сложно для начала. к тому же самому малину не собрать. в отличии от микроконтроллеров.

C> Проблемка в том, что не все хотят учиться экономить байты и микросекунды,

C> особенно в свете того, что для работы подавляющего большинства это нафиг не нужно.
для учебных программ памяти хватит и без экономии. да и не в экономии дело, а в простоте. у микроконтроллеров нет оси и потому нет сложной и непонятной "прокладки". что такое ось и зачем она нужна лучше всего объяснять когда вы попробовали программировать без оси. даже при моргании светодиодами уже возникает задача реализовать многозадачность самому (если хочется мигать асинхронно) и задача как загрузить туда больше одной программы. тогда при переходе на ось, которая сама разделяет общие ресурсы между программами наступает блаженство

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

C> у нас не остаётся оных на изучение алгоритмов и парадигм. Теорию компиляторов, например
какие низкоуровневые особенности микроконтроллеров? там кошерный си. интерфес портов ввода/вывода даже проще чем printf("hello, world!\n");

C> С другой стороны, засадка в том, что считанные килобайты и килогерцы не дают изучать современные алгоритмы,

килобайты оперативы. размер кода там достаточно большой.

C> в которых как раз очень важна производительность,

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

C> Как пример — распределённые вычисления, в том числе линейка.

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


https://youtu.be/i_r3z1jYHAc
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.