Перейти к содержанию
    

Embed старт

Внезапно, появилось свободное время, которое хочу потратить с умом. Решил вложиться в освоение Linux, ибо чувствую что это пригодится. Моя текущая деятельность связана с микроконтроллерами, поэтому изучать Linux планирую, именно как некое продолжение текущих знаний. Столкнулся с проблемой - не знаю с чего стартануть. Конкретнее, хочется знаний, которые не потеряют актуальность и спустя 5-10 лет. Не подумайте, гуглил и не раз, видел кучу подобных тем, но определиться пока так и не смог.

 

Начал с того, что все советуют - ставил Ubuntu, Mint. Как ни странно, нашел аналоги виндового софта, которым пользуюсь ежедневно, все работает, все интуитивно понятно, вполне можно отказаться от винды и жить. Посмотрел пару онлайн курсов, там изучалась работа с консолью, в общем это для меня тоже не в новинку. К высокоуровнему программированию и администрированию душа не лежит.

 

Прочитал 2 книги по внутреннему устройству ОС. Большинство того, что читал в книгах уже и так знал, о чем то подсознательно догадывался. Нового и интересного было совсем чуток, остальное дебри. Взял себе Raspberry поставил на нее ось поигрался пару вечеров, пока отложил, ибо не придумал задачи реализуемой в разумный срок. Посоветовали поставить генту. Посмотрел, не проникся, как минимум, странный подход решения проблемы. Все таки хотелось бы решать какие то проблемы ближе к железу, но не заниматься чисто разводкой печатных плат.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После того, как попробовали установить Ubuntu, попробуйте установить и настроить под себя дистрибутивы разрабатывемые в концепции KISS(SlackWare&Arch).

 

Хорошие книги для понимания, что такое Linux:

1) "Ядро Linux. Описание процесса разработки" Р.Лав

2) "Linux. Системное программирование" Р.Лав

3) "Linux device drivers" Jonathan Corbet, Alessandro Rubini and Greg Kroah-Hartman

 

Далее освоение разработки под SBC(single board computer), типа ODROID-C1+/C2

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильно посоветовали генту. Это — единственный нормальный дистрибутив линукс, в котором можно не только развлекаться, но и работать. А остальные обычно через одно место устроены. Я уж не говорю о поцтеризации всех дистров, кроме генты. Слака, кстати, тоже уже частично поцтеризуется. Нафиг этот график!

 

Программирование же под одноплатники несколько отличается от программирования под мелкоконтроллеры: у одноплатников вся фурнитура скрыта за сисвызовами ядра. Поэтому доступ к ней возможен либо через sysfs, либо через ioctl'ы, либо через ПДП (но для этого нужны полномочия суперпользователя). Для упрощения работы с фурнитурой на "малинке" советую поставить библиотечку wiringPi. Правда, работает она через ПДП, т.е. запускать нужно будет от рута (иногда suid-бит не помогает).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Собственно Linux - это только ядро, а Ubuntu, Mint, генту - дистрибутивы линукса. Дистрибутивы в основном решают задачу сборки, распространения и взаимодействия пакетов.

Вся emebedded linux система условно делится на загрузчик (u-boot), ядро (linux), корневую фс (rootfs) ну и ваше приложение (optware). Все это собирается вместе системами сборки типа buildroot, OpenEmbedded и т.п. в прошивку. Т.е. чисто работы с железом здесь вообще немного и скорее всего ее уже кто-то сделал за вас, если конечно вы не портируете линукс на оригинальную архитектуру.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После того, как попробовали установить Ubuntu, попробуйте установить и настроить под себя дистрибутивы разрабатывемые в концепции KISS(SlackWare&Arch).

 

Хорошие книги для понимания, что такое Linux:

1) "Ядро Linux. Описание процесса разработки" Р.Лав

2) "Linux. Системное программирование" Р.Лав

3) "Linux device drivers" Jonathan Corbet, Alessandro Rubini and Greg Kroah-Hartman

 

Далее освоение разработки под SBC(single board computer), типа ODROID-C1+/C2

 

"Linux device drivers" Jonathan Corbet, Alessandro Rubini and Greg Kroah-Hartman я бы не советовал начинающему. Это скорее справочник, который довольно трудно читать непосвященному.

 

Я бы порекомендовал вот эту инструкцию:

http://www.tldp.org/LDP/lkmpg/2.6/lkmpg.pdf

 

Очень хорошо пишет Олег Цирюлик (поищите сами его книги):

https://www.ibm.com/developerworks/ru/libra...inux_kernel_01/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...