Secure Software Development

Introduction to Operating Systems

Unit 7

Welcome to Week 7 where we will discuss Operating Systems (OS) and their relationships to programming languages and security. Most applications need to interact with the underlying operating system – whether it is to pick up input from a keyboard (or other input device) or to output data to a display. There are also security implications because such interactions often require the user application to link with software libraries – either supplied by the OS provider or a third party.
This week will help you to understand the implications, risks and challenges in selecting an operating system and how virtualisation affects security.

Outcomes

  • Summary of the learning outcomes

This unit aims to:

  • Describe mitigations to make operating systems more secure
  • Explain some of the key risks and vulnerabilities associated with operating systems
  • Outline the differences between static and dynamic libraries and when to use each
  • Reflection

What exactly have I learnt and how?

The last few weeks have been tough, as it took me over two weeks to complete the Django course. In the meantime, I worked full time, attended the seminars, worked out the units and created the design team project by the end of unit 6. Even though my energy was low, I am very proud of myself for acquiring new skills that will help me develop the code for the team project and make me a full-stack developer and, therefore, more valuable. In the future, I will continue to build my skills to become a better full-stack developer and develop my projects.
  • Notes

Notes from the elaboration of the unit, various meetings, and feedback from team members and tutors

Exploring Django for building Web Apps
During the weeks, I attended the Udemy course "Django 4 and Python Full-Stack Developer Masterclass" to develop my skills as a Backend Developer to build robust Web Apps. In order to develop our Team Project, "National Cyber Threat Tracking System," related to the design proposal, an understanding of Django is required. The notes to my course are attached. Also, a certification about my participation in the course is attached as well.

Contact Me