2010-06-16 2 views
11

Ich möchte lernen C, UNIX und LINUX und mehr über eingebettete Systeme. Sehr interessiert an ihnen. Gibt es Online-Kurse oder Websites, die mich leiten können? Und bitte schlagen Sie Bücher vor, um sie zu lesen.Ressourcen zum Lernen von C, Unix, Linux und eingebetteten Systemen

Danke für Ihre Zeit.

Ya bitte lassen Sie Ihre Antworten und Kommentare kommen, sie sind von unschätzbarem Wert für mich .. !!

+3

Diese Frage verdient keine Abstimmung nach unten. – rahul

+8

Diese Frage ist viel zu breit. Jedes dieser Themen ist sehr detailliert. Beginnen Sie damit, die relevanten Wikipedia-Einträge zu diesen Themen zu lesen und die zugehörigen Links zu erkunden. Dann entwickeln Sie ein Verständnis dafür, was Sie lernen müssen und wie Sie mit gezielteren Fragen zu StackOverflow lernen können. –

+1

@rahul, stimme ich zu. Zumindest, wenn Sie Downvote eine Erklärung geben, warum. – griegs

Antwort

11
  • Die Programmiersprache C von K & R
  • Erweiterte UNIX Programmierung
  • UNIX Netzwerk
  • Programmierung
  • Structure and Interpretation of Computer Programs Videos (in Lisp getan, aber von unschätzbarem Wert Programmierkurs)
  • den Linux-Kernel (ein wenig Verständnis veraltet, aber gute Informationen, nicht als Evangelium)
  • Linux Device Drivers 3rd Edition (ziemlich veraltet, aber gute Infos, wie oben)
  • Writing Linux Device Drivers (ziemlich auf dem neuesten Stand, aber nicht so detailliert wie vor)

  • The UNIX Time-Sharing System, ist dies im Wesentlichen das Originale UNIX Papier, es kann helfen, zu verstehen, wo das alles aus, ziehen sie kam‘ t muss jedes Detail dieses alten Papiers verstehen, aber ich denke, es gibt einen guten Hintergrund

+2

Danke für den Link zu "Das UNIX Time-Sharing System", es ist großartig! – zvolkov

1

Es gibt viele erstaunliche Ressourcen online. Mein Favorit ist von MIT.

http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

Kostenlose Kurse. Sie können ziemlich eingehend sein und viel mehr Themen abdecken als nur Informatik und Mathematik.

+0

Zusätzlich zu den NPTEL-Kursen: http://nptel.iitm.ac.in/courses.php Es gibt eine eingehende Video-Vortragsreihe über eingebettete Systeme – itisravi

0

Ein schneller Weg, um etwas über die oben genannten zu lernen, ist ein MSP430-basiertes Entwicklungsboard von Texas Instruments zu kaufen, mspgcc (den Open-Source-Compiler für den MSP430) auf einem Linux-Rechner zu installieren und ein Basic zu schreiben C-Programm, das eine LED auf dem Entwicklungsboard blinkt.

0

Außer den oben vorgeschlagenen Ressourcen müssen Sie verstehen, warum Sie diese Sprachen benötigen. Programmiersprache oder ein Betriebssystem allein wird Sie nur so weit bringen - für z.B. Wenn Sie auf Embedded-Plattformen programmieren, ist der Speicher normalerweise nicht in Hülle und Fülle vorhanden. Sie müssen also für die Speicheroptimierung codieren. Wenn Sie in Echtzeit arbeiten, müssen Sie das Interrupt-Handling usw. gut verstehen. Ich würde vorschlagen, dass Sie auf jeden Fall Zeit für die Architektur (ARM Cortex-M1 usw.) aufwenden, für die Sie programmieren möchten. Immer hilft.

Weitere Macken Blick in http://en.wikibooks.org/wiki/Embedded_Systems/C_Programming

Orielly der Programmierung eingebetteter Systeme in C und C++ ist ein guter Anfang, wenn Sie die Grundlagen von C/C++ klar haben.

2

Ich würde "UNIX for Dummies" als Ausgangspunkt unter Unix/Linux empfehlen.

+0

stimme mit Ihnen Kumpel ......... –