Physics 2T: Programming Under Linux PHYS2003

  • Academic Session: 2019-20
  • School: School of Physics and Astronomy
  • Credits: 10
  • Level: Level 2 (SCQF level 8)
  • Typically Offered: Semester 2
  • Available to Visiting Students: Yes
  • Available to Erasmus Students: Yes

Short Description

Provides students with a solid grounding in C programming, together with an understanding of the use of the LINUX operating system and experience of using the tools available under LINUX for C programming.

Timetable

The lectures will be on Tuesdays and Thursdays at 14:00 during Semester 2. During enrolment, students will need to register for one of the supervised laboratory sessions that are offered on Monday, Wednesday, and Friday afternoons.

 

The laboratory will also be available to students at other times during weekdays provided the PCs are not in use by another timetabled class.

Requirements of Entry

40 credits at Level 1 with a grade point average of 10

Assessment

Practical work 25%, Programming test 25%, Degree examination 50%

Main Assessment In: April/May

Course Aims

The aims of the course are to provide students with a solid grounding in C programming, together with an understanding of the use of the LINUX operating system and experience of using the tools available under LINUX for C programming.

Intended Learning Outcomes of Course

The intended learning outcomes for the three principal strands of the course are listed below.

I. Linux operating system
Upon completion of the course students should:
· have an appreciation of the background to, and history of, Linux;
· understand the basics of user interaction with Linux (shell, X windows, Gnome/KDE desktops, ...);
· be able to execute commands for file and directory navigation and maintenance (cd,ls,pwd,less,...);
· be proficient in finding information using the online help (man,info,....);
· be able to monitor a Linux system (ps,who,....);
· be able to search for text information;
· be able to execute printing commands;
· have experience of viewing text and images (gv,xv,acroread,..);
· be able to write simple shell scripts.

II. C Programming Language
Upon completion of the course students should:
· appreciate the role of the main() function;
· have knowledge of variable types, operators and expressions;
· be able to apply program control flow constructs (do...while, for, if, switch,...);
· be able to define functions;
· understand and be able to use pointers and arrays;
· know how to programmatically achieve input and output;
· understand the use of libraries;
· have attained the ability to write short programs in C, using standard structured programming techniques, with the programs divided into separate functions.

III. Tools for C Programming under Linux
Upon completion of the course students should:
· be able to use the Xemacs editor;
· have experience of the GNU Compiler Collection (gcc)
· know how to use the make utility

Minimum Requirement for Award of Credits

Regular attendance at lectures and carrying out the work of the practical class. Students must submit a minimum of 50% of the C laboratory projects and 50% of the Linux laboratory projects. Students must also sit the practical examination and written end-of-course examination."