Комментарии 13
nckma
Честно говоря поражает уровень подготовки студентовЕсли использовать указанные технологии и работать правильно организованной и подобранной группой, то при наличии мотивации у 50% российских ИТ студентов это тоже получится. Собственно статья это самореклама Takaya Saeki как талантливого организатора, который смог организовать толпу раздолбаев («Сёхэй не смог выдержать сложность отладки», «Юити постоянно в неё играл» ) достичь такого результата.
Непонятно, к чему тут претензии. Это правильный подход к образованию, так как талантливые ребята прокачают на этой задаче свои навыки, а неталантливые отвалятся и не пройдут. Осваивается куча навыков: начиная от командной работы, заканчивая пониманием чужого кода. Гораздо лучше, чем слушать бубнящего лектора и заучивать определения перед зачетом.
Любая теория хорошо закрепляется практикой. Порой даже бывает проще освоить материал практикой после небольшого теоретического вступления. Тогда дальнейшая теория легче усваивается и запоминается. Я, к примеру, цифровую логику знал давно, Verilog для старта изучил по трем коротким статьям, взялся пилить свой довольно сложный проект на ПЛИС и по ходу уже осваивал все остальное. Да, я не стал гуру в ПЛИС, но таким методом я продвинулся в этом плане дальше, чем если бы зубрил всю теорию перед тем как прикоснуться к железу.
У нас на четвертом курсе в рамках предмета «Организация электронных вычислительных машин и систем» мы и препод не знали, чем себя занять во втором семестре, а потому решили пуститься во все тяжкие и заделать на VHDL на плате Virtex ML403 свой процессор. Общей задачей была реализация базовой системы команд, а потом по группам писали проблемно-ориентированные. Так как мы все были ЦОСники и тяжело больны TI TMS320, то и мысль была распараллелить наши труды по реализации сложных команд типа умножение с накоплением. Ну и сделали мы это, после merge всех наших блоков получился франкенCPU с DSP-наклонностями))
Жалко, что тогда не нашлось энтузиастов продолжить работу, например, сделать этот CPU многоядерным, опять же, ОС туда набросать. Мне тогда это дело так понравилось, что даже начал реализовывать прикола ради на транзисторах, благо, отмоделенная вдоль и поперёк структура уже есть. Ух, знать бы в те годы о японских студентах, мы бы приняли челлендж с превеликим удовольствием!
![image](https://habrastorage.org/webt/bu/i-/2u/bui-2u52_-rdxsbvpe-jria0ah8.png)
Например, в ней есть допущение о том, что char занимает 1 байт
Это не допущение, это требование POSIX.
Но далее имею init: exec sh failed. Программа init делает exec(«sh», argv).
Чтобы запустить «init» мне пришлось положить его ELF на диск.
Вопрос: правильно ли я понимаю, что у меня на диске уже должен лежать ELF этого «sh» чтобы он запустился?
Запуск Unix-подобной ОС на самодельном CPU с помощью самодельного компилятора C