Module Specifications.
Current Academic Year 2024 - 2025
All Module information is indicative, and this portal is an interim interface pending the full upgrade of Coursebuilder and subsequent integration to the new DCU Student Information System (DCU Key).
As such, this is a point in time view of data which will be refreshed periodically. Some fields/data may not yet be available pending the completion of the full Coursebuilder upgrade and integration project. We will post status updates as they become available. Thank you for your patience and understanding.
Date posted: September 2024
| |||||||||||||||||||||||||||||||||||||||||||
Repeat examination |
|||||||||||||||||||||||||||||||||||||||||||
Description This module introduces students to systems software that interacts closely with the operating system. It addresses the structure of operating systems, historical developments and current norms. Systems software is a speciality within the context of the development of the operating system itself and the development of software which is closely coupled with the operating system and its kernel as well as the services that an operating system has to offer through its APIs and ABIs. The module aims to introduce students to deeper levels of software interactions, below the application layer and into the kernel of the operating system and to delve into the services that may be provided at the kernel level. It also aims to introduce students to server software and to demystify the field of server configuration and management. | |||||||||||||||||||||||||||||||||||||||||||
Learning Outcomes 1. understand the structure of the UNIX and UNIX-like operating systems and how application software interacts with the operating systems. 2. develop and construct scripts which utilise system utilities and calls to the operating system to automate complex tasks and solve repetitive problems. 3. develop applications in C which interact closely and are tightly integrated with the operating system. For instance memory management in the stack and the heap, application programming with Sockets for IPC and Internet communication, reliable and unreliable schemes. 4. evaluate and select the various server solution architectures available for the construction of large scale server environments and an introduction to their logs and analysis of logged data. 5. select appropriate computer languages and scripting techniques to develop appropriate systems software solutions. | |||||||||||||||||||||||||||||||||||||||||||
All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml |
|||||||||||||||||||||||||||||||||||||||||||
Indicative Content and Learning Activities
Indicative SyllabusThe development trends in Operating systems, historic current and future. The UNIX shell, file system, permissions, command line shells and their interaction with the kernel. The C programming interface to the UNIX and Linux Operating System. Memory allocationdeallocation and management in Linux, the stackheap and memory locking for security. Network programming, the Socket interface, TCP and UDP Sockets, raw sockets, UNIX domain sockets for inter process communication and a comparison between the different socket types. Servers on UNIX, managing Apache web-server, server logs, web applications, MySQL, PHP, JavaScript and AJAX. Shell scripting in the UNIX and Linux environment. Virtualisation in the enterprise, virtual servers, operating systems, hypervisors and flavours of virtualisation. VMware and Xen virtual environments. UNIX clusters for high end servers. Cloud computing for on demand virtualisation. | |||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||
Indicative Reading List | |||||||||||||||||||||||||||||||||||||||||||
Other Resources None | |||||||||||||||||||||||||||||||||||||||||||