Ресурсы для обучения C, Unix, Linux и встроенных систем
Я хочу узнать C, UNIX и LINUX и многое другое о встроенных системах. Очень их интересует. Есть ли онлайн-курсы или веб-сайты, которые могут мне помочь. И, пожалуйста, предлагайте книги, чтобы читать их, изучая их.
Спасибо за ваше время.
Я прошу, чтобы ваши ответы и комментарии вошли, они бесценны для меня..!!
Ответы
Ответ 1
- Язык программирования C по K и R
- Расширенное программирование UNIX
- Сетевое программирование UNIX
- Структура и интерпретация компьютерных программ Видео (сделано в LISP, но бесценный курс программирования)
- Понимание ядра Linux (немного устаревшее, но хорошая информация, не воспринимайте как Евангелие)
- Драйверы устройств Linux 3rd Edition (довольно устаревшая, но хорошая информация, такая же, как указано выше).
-
Написание драйверов устройств Linux (довольно современное, но не так подробно, как раньше)
-
UNIX Time-Sharing System, это, по сути, оригинальная статья UNIX, это может помочь понять, откуда все это произошло, не нужно понимать каждую деталь этой старой статьи, но я думаю, что она дает хороший фон
Ответ 2
Я очень рекомендую "UNIX для чайников" в качестве отправной точки в Unix/Linux.
Ответ 3
В Интернете есть много удивительных ресурсов. Мой любимый из MIT.
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/
Бесплатные курсы. Они могут быть довольно глубокими и охватывать гораздо больше предметов, чем просто информатика и математика.
Ответ 4
Немного ресурсов, которые помогли мне в C:
Удачи!
Ответ 5
Быстрый способ немного узнать обо всем выше, это купить платформу разработки на базе MSP430 от Texas Instruments, установить mspgcc (компилятор с открытым исходным кодом для MSP430) на Linux-машине и написать базовый C программа, которая мигает светодиодом на доске разработки.
Ответ 6
Помимо ресурсов, предложенных выше, вам нужно понять, зачем вам нужны эти языки. Язык программирования или только одна ОС будет принимать вас как можно дальше - например, если вы программируете на встроенных платформах, то обычно памяти не хватает. Поэтому вам нужно кодировать оптимизацию памяти. Если вы работаете в режиме реального времени, вам нужно хорошо понимать обработку прерываний и т.д. Я бы предложил определенно потратить время на архитектуру (ARM Cortex-M1 и т.д.), Для которой вы планируете код. Всегда помогает.
Для большего количества причуд смотрите http://en.wikibooks.org/wiki/Embedded_Systems/C_Programming
Встраиваемые системы Orielly, встроенные в C и С++, - это хорошее место для начала, когда у вас есть основы C/С++ clear.