Category: Linux programming, shell, C, kernel, embedded
Linux provides programmers with many tools that facilitate their work. During this training, we prepare programmers for working in Linux. We introduce both the fundamental theory and tools related to the system itself, and practical topics related to programmer’s work, such as the most important tools, integrated development environments; there is also an introduction to bash scripting language and some elements of C/C++ particular to this environment.
After the course: the participants will be able to use the Linux console proficiently – including installing and compiling programs, using the most important tools and services, among these tools facilitating programming and collaboration (version control systems), and automate their work using shell scripts and the ‘make’ commands. They will be ready to write shell scripts and C programs in Linux environment.
- The architecture of Linux, general operating principles:
- Users, groups and access rights (basis);
- Processes (and threads);
- Boot procedure;
- File system – where and what to look for;
- How system components are connected: pseudofiles, network ports, slots, linking – static or dynamic; names, functions and characteristics of each part of the system;
- How to setup the system (graphic and text configurators, scripts).
- Getting help (documentation and manual pages)
- Working in the shell, the automation of work:
- Sed and awk;
- Regular expressions;
- Shell scripts;
- Scripts make – build automation
- Install the software
- Configure, make, make install;
- Rpm and deb;
- Apt and yum
- Create installation packages with your own software: deb, rpm (debian/rules, spec files)
- Integrated Development Environment
- VIM – the basics
- VIM – extensions and scripts useful for the programmer
- NetBeans IDE
- Programming engineering
- Collaboration tools: subversion, git
- Archiving and data security: tar, openssl (encryption)
Audience and prerequisites
The participants should be very well-versed in another operating system (probably Windows) and have some basic familiarity with Linux – e.g., be able to use it in graphical mode.
Course participants receive completion certificates signed by ALX.