GNU Programming
Code | Completion | Credits | Range |
---|---|---|---|
11GNU | KZ | 4 | 2P+2C |
- Course guarantor:
- Lecturer:
- Tutor:
- Supervisor:
- Department of Solid State Engineering
- Synopsis:
-
The aim of the course is to introduce students into the Linux system environment and therein used GNU utilities and programming tools to such a level, that they would be able to use these tools for creating scripts and programs for processing acquired or simulated data for their experiments in physics with the use of the facultys Hyperion cluster (however the learned skills could of course be applied to any Linux system).
- Requirements:
- Syllabus of lectures:
-
1Linux, system, principles, structure, basic commands and utilities
2GNU Bourne-Again Shell, introduction to scripting language, commands
3GNU Compiler Collection and GNU C Compiler
4Language C and its GNU implementation, complete introduction to language
5Principles and use of C in GNU environment, structure of translation
6Preprocessor and assembler, user viewpoint
7Linker, manual translation procedures, use of libraries
8Working with GNU Make, Main Features
9GNU Autotools, Autoconf, Automake, Libtool, M4
10Version Control Software - Subversion, GIT
11Hyperion cluster, introduction, topology and architecture (HW + SW)
12Task management system, shell modules, parallel environment
13Examples of using the cluster to data processing.
- Syllabus of tutorials:
-
1Linux, system, principles, structure, basic commands and utilities
2GNU Bourne-Again Shell, introduction to scripting language, commands
3GNU Compiler Collection and GNU C Compiler
4Language C and its GNU implementation, complete introduction to language
5Principles and use of C in GNU environment, structure of translation
6Preprocessor and assembler, user viewpoint
7Linker, manual translation procedures, use of libraries
8Working with GNU Make, Main Features
9GNU Autotools, Autoconf, Automake, Libtool, M4
10Version Control Software - Subversion, GIT
11Hyperion cluster, introduction, topology and architecture (HW + SW)
12Task management system, shell modules, parallel environment
13Examples of using the cluster to data processing.
- Study Objective:
- Study materials:
-
Key references:
[1] C. Alvin: Computer Programming: Learn Any Programming Language in 2 Hours. CreateSpace Independent Publishing Platform, 2018. ISBN: 1985644916, 9781985644915
[2] T. Roughgarden: Algorithms Illuminated. Soundlikeyourself Publishing, LLC 2019, ISBN-13: 978-0999282946.
Other references:
[3] M. Barr, A. Massa: Programming Embedded Systems: With C and GNU Development Tools. 2nd ed., OReilly Media, Sebastopol CA USA 2007, ISBN-13: 978-0596009830
- Note:
- Further information:
- No time-table has been prepared for this course
- The course is a part of the following study plans:
-
- Aplikace informatiky v přírodních vědách (elective course)
- Fyzikální inženýrství - Inženýrství pevných látek (PS)