1.8 Explain common OS types and their purposes

  • Workstation OSs
    • Windows
    • Linux
    • macOS
    • Chrome OS
  • Cell Phone / Tablet Oss
    • iPadOS
    • iOS
    • Android
  • Various Filesystem Types
    • New Technology File System (NTFS)
    • File Allocation Table 32 (FAT32)
    • Third Extended Filesystem (ext4)
    • Apple File System (APFS)
    • Extensible File Allocation Table (exFAT)
  • Vendor Life Cycle Limitations
    • End-of-Life (EOL)
    • Update Limitations
  • Compatibility Concerns Between OSs

Workstation Operating Systems – Windows vs Apple vs Linux

What’s the difference between Windows, Apple, and Linux?

  • Windows

    • Manufactured by Microsoft

    • Windows is closed source – the source code is not available

    • Most computers run Microsoft Windows, especially business computers

    • Microsoft does not manufacture any hardware.  You can buy compatible hardware from many different manufacturers.

    • The latest version is Windows 11

    • Windows stores files in the NTFS file system (hierarchical file system)

    • Settings are stored in the Windows registry

    • Most programs are written to run on Windows

    • Frequent security updates are released by Microsoft (almost weekly), and are mandatory

    • Microsoft makes editions of Windows for servers – the latest version is Windows Server 2022

    • Integrates well with Microsoft cloud services such as Azure, Exchange Online, Teams, and Office 365

    • Windows has features for enterprise that allow an organization to centrally manage users, computers, and software.  These features include SSCM Server, Active Directory, and Group Policy.

  • macOS

    • macOS is manufactured by Apple

    • macOS is closed source – the source code is not available

    • macOS is based on the Linux operating system

    • macOS runs on Apple hardware (iMac, MacBook Pro, etc.), which is manufactured by Apple

    • You can technically run macOS on a Windows PC

    • The latest version is macOS 12.5, also known as macOS Monterey

    • macOS stores files in HFS file system (hierarchical file system)

    • Settings are stored in various plist files and sqlite databases

    • Fewer programs run on macOS than Windows; some of the most popular applications are available on both macOS and Windows

    • Security updates are not frequent

  • Linux

    • The original version of Linux was developed by Linus Torvalds in 1991.  The core of the operating system is called the kernel.  Linux is open source.

    • Linux is a command line operating system.  It does not show any graphics.  You type stuff and it types back.

    • Many people have taken the kernel and built their own versions of Linux on top of it.  These versions are a combination of open source and proprietary source code.  There is a massive community of supporters and programmers.  The most popular versions of Linux are Ubuntu and Red Hat.

      • Red Hat and Ubuntu versions have a graphical user interface.

      • Many enterprises use Ubuntu for their servers.

      • Red Hat and Ubuntu are open source

      • Red Hat and Ubuntu make billions of dollars by providing the software for free and then selling you an advanced support contract.

    • In Linux, both files and folders (directories) are considered files.  File metadata is stored in inodes.  Each inode corresponds to a different file.

    • Each application stores its own settings in its own files

    • Programs that run on Linux generally are not available on Windows or macOS.

  • Chrome OS

    • Chrome OS was developed by Google and was based on Linux

    • It is available pre-installed on hardware manufactured by Google partners, and runs on phones, tablets, and laptops. 

    • It generally runs on thin client laptops known as Chromebook; Chromebook have limited hardware.  For a Chromebook to function, it must be connected to the internet. 

    • Many schools are buying Chromebook because they are cheaper than Windows laptops.  Google allows a school access to its G Suite (e-mail and web-based Office Applications) for approximately $5 per user per month.  This is hurting Microsoft’s market share.

    • It was designed as a thin client operating system, with primary support for web apps

    • Its primary user interface is the Google Chrome web browser.  You can run most Android apps (downloadable through the Google play web store)

Cellular Operating System

  • Android

    • Android is developed by Google.  It is open source and based on Linux

    • Google is responsible for creating updates to Android, and releasing them

    • Device manufacturers will customize the Android operating system released by Google to suit their own devices

    • Android is used by many phone manufacturers, including LG and Samsung

    • You can download Apps from the Google Play Store or the Amazon store.  You can also download Apps from the internet, but these might present a security risk.

    • When you buy an Android phone, it will come with Google apps preinstalled

    • It is easy to “root” an Android operating system (gain admin access) to run other unauthorized applications or to modify the software

    • You must have a Google account to take full advantage of the Android’s features

  • iOS

    • iOS is developed by Apple.  It is closed source and based on Linux.

    • iOS only runs on Apple devices.

    • You download Apps from the iTunes store (only apps authorized by Apple are available in the store).  Apps are not available anywhere else.

    • Data is optionally backed up to iCloud (an Apple service)

    • It is difficult or impossible to “root” or “jailbreak” (gain admin access) iOS to run other unauthorized applications, especially on newer versions of the iPhone

  • iPadOS

    • Apple iPads used to run the same version of iOS as iPhones

    • In 2019, Apple split iOS into two versions – iOS for iPhones and iPadOS for iPads, and said that they would develop them separately from now on

    • iPadOS allows a user to multitask (work with multiple applications at the same time)

Filesystem Types

The file system is a scheme for storing data on a hard disk drive.  Files are just zeros and ones as far as the hard disk is concerned.  How can the operating system retrieve files then?  It can’t say, “hey hard drive, give me document5.docx”.

  • The hard drive is divided into sectors.  Millions of sectors.

  • There is a huge table that lists every file on the hard drive and the sector that it is in.  That table is stored in a special part of the hard drive.

  • Each time we create a file, the operating system updates the table with the location of the file.  If we delete a file, the operating system deletes the entry from the table.

  • When the operating system wants to retrieve a file, it checks the table to see which sector the file is in.  A large file can occupy more than one sector.  Then it tells the hard drive, “give me the file in such and such sector”.

  • There are different schemes for how these tables are structured and these schemes are the basis of the file system.  Let’s look

exFATExtended File Allocation Table  

exFAT was designed by Microsoft for USB drives  

It is good for embedded systems because it has low power requirements  

You must pay Microsoft a license fee to use exFAT in your product  

You can store files up to 16 exabytes on partitions of up to 64 zettabytes  
FAT32File Allocation Table 32 (previous versions were FAT16 and FAT12)  

FAT32 is used by USB drives, and previously used by Windows computers  

Maximum size of 4GB per file  

During formatting, a hard drive is divided into sectors.  Typically, the size of a sector is 4KB.  A 1TB hard disk could have 250,000 sectors.   

A file can occupy one or more sectors, depending on its size.  

The FAT32 system uses a table to keep track of each Hard Drive Sector’s status

-Empty (does not contain a file)
-Full (contains a file or portion of a file)
-End of File Market (contains the last portion of the file)
-Damaged (sector contains damage and can’t be used to store files)  

When we erase a file, we only change the status in the FAT32 table.  If the space hasn’t been used by some other file, we can use special software recover the file.
NTFSNew Technology File System  

NTFS is the current system in use on most Windows computers   It is optimized for hard disks with 4KB sectors

Key features

-Journaling (tracks changes to file metadata)

-Volume Shadow Copy (retains previous versions of files)

-Transactions (groups multiple changes to files in a single transaction; guarantees that all changes happen to a file at the same time)

-Encrypting File System (can encrypt and decrypt files automatically)

-Access Control Lists (can control who can view or access each file/folder)

-Compression (allows us to compress files to save room)

-Disk Quotas (set limits on disk usage per user)   NTFS uses a Master File Table, but additional details about how it works are not available to the public.  
ext3, ext4Extended File System Version 3 and Extended File System Version 4  

Used by Linux

Ext4 supports volumes of up to 1 EB and file sizes of up to 16 TB  
APFSApple File System  

APFS was Developed by Apple to replace the HFS+ (or HFS Extended) file system.   HFS was probably the worst filesystem ever (according to Linux users), because it doesn’t support checksums (which leads to data corruption)  

Vendor Life Cycle Limitations

Each operating system goes through a life cycle

  • The developer comes up with a list of why the old operating system was a piece of crap, new features they want to add, security flaws, user complaints, etc.

  • They start writing the code for the new operating system.  This process could take years.

  • Once the new operating system is in a decent state, the developer starts testing it, and fixing the bugs that they find.

  • After that, the operating system is released to a select group of external people for testing.   This is known as the beta test, and it could take months to years to complete.  The developer continues to correct bugs.

  • The developer will never finish finding and correcting bugs.  If it were up to the engineers, no operating system would ever be sold to the public.  No software program would ever be ready.  Eventually marketing and sales will get frustrated, and a semi-decent operating system will be sold to the public, and to computer manufacturers.

  • People will continue to report bugs.  The developer will release regular updates to the operating system.

    • Patch/hotfix – a patch is an update that fixes a specific problem.  When a security vulnerability is discovered, people can’t wait to get it fixed.  Waiting leads to hacking.

    • Maintenance release – a maintenance release fixes multiple issues.  It may not be as urgent.

    • Service packs – a service pack is a huge update that combines all the previous patches, hotfixes, and maintenance releases.

    • Feature updates – a feature update provides additional functionality to the operating system.  Feature updates are released approximately once per year.

  • Once the operating system is sold to the public, the developer starts work on the next version of the operating system. 

    • After a while the developer stops making patches for the current operating system.  At this point, the operating system has reached its End of Life.  By now, one or two new versions of the operating system are on the market.

    • The developer may continue to provide extended support for its enterprise customers.