Tag Archives: Linux

Topic 1 – Operating Systems

Why do I need to learn about operating systems?

Because you will develop your software using an operating system or for an operating system.

What can I do after finishing learning operating systems?

You will be prepared with skills that help you prepare environments for your your programming journey.

You will be prepared with knowledge that helps you understand programming terminologies.

You may even be inspired to learn programming to solve problems.

How many operating systems should I know?

As many as possible. We recommend that you learn how to work with Windows first. Then you learn about basic concepts of an operating system.

How do I learn to use operating systems?

Please read
– this book, Andy Rathbone (2015). Windows 10 For Dummies. John Wiley & Sons, to learn how to use Windos 10, or
– this book, Andy Rathbone (2021). Windows 11 For Dummies. John Wiley & Sons and this book, Ciprian Adrian Rusen (2022). Windows 11 All-in-One For Dummies. John Wiley & Sons, to learn how to use Windows 11.

How about other operating systems such as macOS, Linux or Unix?

If you have a Mac then you can read this book, Pogue David (2019). macOS Mojave: The Missing Manual. O’Reilly Media, to learn how to use macOS.

If you have a PC with Ubuntu, or Linux, or Unix then you can read this book, Mark G. Sobell (2015). A Practical Guide to Ubuntu Linux. Prentice Hall, to learn how to use a Unix-based operating system.

After that, please read these lecture notes, Introduction to Computing Principles.

After that, please read this book, Abraham Silberschatz et al. (2018). Operating System Concepts. Wiley, to learn in depth about operating system concepts..

Terminology Review:

  • Central Processing Unit (CPU).
  • Random-Access Memory (RAM).
  • Hard Disk Drive (HDD).
  • Solid-State Drive (SSD).
  • Programs.
  • Basic Input/Output System (BIOS)
  • Unified Extensible Firmware Interface (UEFI).
  • Boot Loader.
  • Operating System (OS).
  • Monolithic Structure.
  • Microkernels.
  • User Mode.
  • System Calls.
  • Kernel.
  • Kernel Mode.
  • Processes.
  • Threads.
  • Process Synchronization.
  • Memory Management Unit.
  • Logical Address.
  • Physical Address.
  • Paging.
  • File System.
  • Security and Protection.
  • Networks.
  • Virtual Memory.
  • Virtualization.
  • Virtual Machines.

Once you finish learning about operating systems please click Topic 2 – Introduction to Computer Networks to continue.