Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
11 years ago

Beginner in Linux. Need some resource to learn Linux.

Hello guys!

I know that Linux is an operating system and I have no other idea about the Linux commands and about its use in embedded field.

I just want to learn whatever is possible about Linux on my own.

Requesting to provide any link available for online tutorials, or any pdf available for a beginner.

Thanks!

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi,

    I thought this will find a quick answer, but since no one replied yet... :-)

    Now to embedded. That's a big story. A set-top box with a web-server/media-server/router-software/etc is embedded. A SOC (system-on-chip) acting as a software layer for some complex digital hardware is embedded. A single-PCB-computer making a LED blink is embedded.

    If you simply want to have some small computer sitting in a box doing software things, e.g. some network-based service (e.g. a small whatever-server), any single-board computer will do. There are tons of existing software for web-servers, media-servers, repo-servers, etc. Install it, configure it, hook that board to Ethernet or Wifi, and you're done.

    You probably want to hide all the Linux-ness from the outside, make your embedded system look like some smart device. And then you want offer some convenient update-mechanism, which will probably lead you to embedded bootloaders like das u-boot (http://www.denx.de/wiki/u-boot). However, once you're at that point, Google should suffice :-)

    If you want to connect a Linux system to some custom hardware, e.g. through SPI/I2C/GPIO/etc, again I recommend to buy any single-board computer that provides the interfaces you need. Typically they come with a vast library of existing drivers, so that you can communicate with those interfaces simply from a C++-program. Linux also makes it easy to write your own drivers for more fancy pieces of hardware, but that requires quite some knowledge about Linux and C programming. The one book everyone will recommend you about that topic is this one: http://www.makelinux.net/ldd3/ (http://www.makelinux.net/ldd3/).

    Uuuh, and this is the Altera Forum, isn't it? :-D you can build you own SOC inside an FPGA, with some SDRAM attached to it, and install Linux there: http://www.alterawiki.com/wiki/linux_for_the_nios_ii_processor (http://www.alterawiki.com/wiki/linux_for_the_nios_ii_processor). The coolest part about that is that you can e.g. build completely custom hardware to it, e.g. you design some DSP-core, attach an Avalon interface to it, map into the IO-space of your NIOS CPU, then write your own Linux driver to address it, and then you can do blazing fast DSP stuff from a Linux program powered by a custom-taylored FPGA design :-)

    I hope that gave you a few ideas of how to start :-)

    Best regards,

    GooGooCluster
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Yeah! even I was surprised to see no replies...

    Well, thank you so much for the info you have provided. It really gave me loads of ideas..

    I will look into these and start my learning.

    Thanks once again.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Now to embedded. That's a big story. A set-top box with a web-server/media-server/router-software/etc is embedded. A SOC (system-on-chip) acting as a software layer for some complex digital hardware is embedded. A single-PCB-computer making a LED blink is embedded.

    If you simply want to have some small computer sitting in a box doing software things, e.g. some network-based service (e.g. a small whatever-server), any single board computer (https://www.graperain.com/arm-single-board-computer/) will do. There are tons of existing software for web-servers, media-servers, repo-servers, etc. Install it, configure it, hook that board to Ethernet or Wifi, and you're done.

    You probably want to hide all the Linux-ness from the outside, make your embedded system look like some smart device. And then you want offer some convenient update-mechanism, which will probably lead you to embedded bootloaders like Das U-Boot. However, once you're at that point, Google should suffice :-)
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Now to embedded. That's a big story. A set-top box with a web-server/media-server/router-software/etc is embedded. A SOC (system-on-chip) acting as a software layer for some complex digital hardware is embedded. A single-PCB-computer making a LED blink is embedded.

    If you simply want to have some small computer sitting in a box doing software things, e.g. some network-based service (e.g. a small whatever-server), any single board computer (https://www.graperain.com/arm-single-board-computer/) will do. There are tons of existing software for web-servers, media-servers, repo-servers, etc. Install it, configure it, hook that board to Ethernet or Wifi, and you're done.

    You probably want to hide all the Linux-ness from the outside, make your embedded system look like some smart device. And then you want offer some convenient update-mechanism, which will probably lead you to embedded bootloaders like Das U-Boot. However, once you're at that point, Google should suffice :-)

    --- Quote End ---

    So... is this a comment now...? A hidden follow-up question...? Or why are you quoting me without quote tags...? ;-)