Print as pdf if you want a pdf! If you want a nicer printout, click off the browser's automatically added header and footer.
Blekinge Institute of Technology
Department of Computer Science
Revision: 3
Reg.no:
Programming in UNIX Environment
Programming in UNIX Environment
7.5 credits (7,5 högskolepoäng)
Course code: DV1457
Main field of study: Computer Science, Software Engineering
Disciplinary domain: Technology
Education level: First-cycle
Specialization: G2F - First cycle, has at least 60 credits in first-cycle course/s as entry requirements
Language of instruction: English
Applies from: 2013-05-21
Approved: 2013-05-21
This course is established by School of Computer Science and Communication 2013-05-21. The course syllabus is approved by School of Computer Science and Communication 2013-05-21 and applies from 2013-05-21.
The aim of the course is to enable students to acquire specialised understanding of UNIX-based systems and for programming close to the operating system. This involves, among other things, being able to program at the most abstract level of the operating system, close to the user, and down through the levels of abstraction to the lowest level, system calls. The course trains students in designing software that interacts with the computer through the operating system UNIX (and operating systems similar to or based on UNIX such as Linux and MacOS). It provides a foundation for continued studies in other fields (such as computer security) demanding a practical understanding of the technology involved. The objective of the course is achieved by the student through gaining practical experience of developing programs in a UNIX environment in a series of laboratory exercises.
The course covers the following specific levels of abstraction in UNIX programming in greater detail:
• Commands and scripting language
The scripting language is a way of making what is normally perceived as user interaction automatic, i. e. interactively commanding the computer to load files, sort the contents and print them. Scripting languages (exemplified with Bourne shell) are thus very powerful but also less general than ordinary programming languages.
• Program development in C
C is the mainstay in programming of UNIX applications and major parts of UNIX systems are often written in C. Advanced UNIX programming, such as for the implementation of network services, is often executed in C with the help of system and library calls to the operating system.
• Program development in the assembly language
High-level programming languages such as C are sometimes not sufficiently expressive or include undesired or unnecessary functions that can affect performance. Such cases can make it necessary/ important to communicate “directly” with the computer in its own language, i. e. the assembly language. An important advantage of being able to program close to the machine is an increased understanding of how the computer works.
The following learning outcomes are examined in the course:
On completion of the course, the students shall be able to:
On completion of the course, the students shall be able to:
On completion of the course, the students shall be able to:
The theoretical foundations of the course is presented in lectures and / or exercises. The student is also expected to independently assimilate theoretical knowledge through self study of relevant literature. The theoretical knowledge is applied and deepened in practical laboratory work / project assignments in which topic-related problems should be solved through the implementation of the current system. Each exercise is presented in writing and orally.
Modes of examinations of the course
Code | Module | Credit | Grade |
1310 | Shell script programming | 2.5 credits | AF |
1320 | UNIX Programming in C | 2.5 credits | AF |
1330 | Assembly Programming | 2.5 credits | AF |
The course will be graded A Excellent, B Very good, C Good, D Satisfactory, E Sufficient, FX Failed result, a little more work required, F Fail.
The information before a course occasion states the assessment criteria and make explicit in which modes of examination that the learning outcomes are assessed.
An examiner can, after consulting the Disability Advisor at BTH, decide on a customized examination form for a student with a long-term disability to be provided with an examination equivalent to one given to a student who is not disabled.
The course evaluation should be carried out in line with BTH:s course evaluation template and process.
The course can form part of a degree but not together with another course the content of which completely or partly corresponds with the contents of this course.
The main programming languages are C and Bourne Shell. Students are expected to have learnt these programming languages earlier or be able to learn them on their own during the course.
Replaces DV1305 and DV1425.
This is not a legal document. If you would like a copy of the legal decision regarding this course plan, contact the registrar at Blekinge Institute of Technology.