PrevNEXT

How Operating Systems Work

By: Curt Franklin & Chris Pollette

Operating System Development

For desktop systems, access to a network has become such an expected feature that in many ways it's hard to discuss an operating system without referring to its connections to other computers and servers. Operating system developers have made the internet the standard method for delivering crucial operating system updates and bug fixes. Although it's possible to receive these updates via DVD or flash drive, it's become rare.

One question concerning the future of operating systems concerns the ability of a particular philosophy of software distribution to create an operating system usable by corporations and consumers together.

Advertisement

Linux, the operating system created and distributed according to the principles of open source, has had a significant impact on operating systems in general. Most systems, drivers and utility programs are written by commercial organizations that distribute executable versions of their software — versions that normally can't be studied or altered, aka closed source. Open source requires the distribution of original source materials that can be studied, adapted and built upon, with the results once again freely distributed. In the desktop computer realm, this has led to the development and distribution of countless useful applications like the image manipulation program GIMP, the popular office suite LibreOffice and the popular web server Apache.

Many consumer devices like cell phones deliberately hide access to the operating system from the user, mostly to make sure that it's not inadvertently broken or removed. In many cases, they leave a "developer's mode" or "programmer's mode" open to allow changes to be made, if you're able to find it. Often these systems may be programmed in such a way that there are only a limited range of changes that can be made.

Related Articles

More Great Links

Sources

  • Ackerman, Evan. "Apex.OS: An Operating System for Autonomous Cars." IEEE Spectrum. Jan. 30, 2020. (Nov. 5, 2021) https://spectrum.ieee.org/apexos-operating-system-open-source-autonomous-cars
  • Apple, Inc. "Mac OS X: An Introduction for Support Providers." 2001. (Nov. 5, 2021) https://stuff.mit.edu/afs/athena/project/macosx/Mac_OS_X_Intro_for_Support.pdf
  • Apache Software Foundation. "HTTP Server Project." Oct. 7, 2021. (Nov. 5, 2021) http://httpd.apache.org/
  • Barton, Elizabeth. "Folding@home: How Distributed Computing is Unraveling the Mysteries of Protein Folding." HCPLive. April 27, 2010. (Nov. 5, 2021) https://www.hcplive.com/view/protein_folding_playstation_3
  • "Boot Process for a Mac with Apple Silicon." Apple Platform Security. Apple Inc. Feb. 18, 2021. (Nov. 5, 2021) https://support.apple.com/guide/security/boot-process-secac71d5623/web
  • Both, David. "The Central Processing Unit (CPU): Its Components and Functionality." Red Hat. July 23, 2020. (Nov. 5, 2021) https://www.redhat.com/sysadmin/cpu-components-functionality
  • Brandom, Russell and Robertson, Adi. "Supreme Court Sides with Google in Oracle's API Copyright Case." The Verge. April 5, 2021. (Nov. 5, 2021) https://www.theverge.com/2021/4/5/22367851/google-oracle-supreme-court-ruling-java-android-api
  • Brooks, Gray. "Benefits of APIs" Digital.gov. March 12, 2013. (Nov. 5, 2021) https://digital.gov/2013/03/12/benefits-of-apis/
  • Bryanpwo. "How to Install Desktop Environments Next to Your Existing Ones." Discovery. EndeavourOS. March 24, 2021. (Nov. 5, 2021) https://discovery.endeavouros.com/general-system-settings/how-to-install-desktop-environments-next-to-your-existing-ones/2021/03/
  • Bryant, Randal E., and O'Hallaron, David R. "Virtual Memory." In Computer Systems: A Programmer's Perspective, 3rd Ed. Boston: Pearson Education. 2016. (Nov. 5, 2021) http://www.csapp.cs.cmu.edu/2e/ch9-preview.pdf
  • "Main Memory." University of Illinois Chicago. 2006. (Nov. 5, 2021) https://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/8_MainMemory.html
  • Cisco Press. "Applying Cisco Troubleshooting Tools." Nov. 16, 2001. (Nov. 5, 2021) https://www.ciscopress.com/articles/article.asp?p=24109&seqNum=11
  • "Classification of Operating Systems." In CIS 111: Introduction to Operating Systems. Olympic College. (Nov. 5, 2021) http://cis2.oc.ctc.edu/oc_apps/Westlund/xbook/xbook.php?unit=01&proc=page&numb=3
  • Denning, Peter J. "Multitasking Without Trashing." Communications of the ACM. 60(4), 32-34. September 2017. (Nov. 5, 2021) https://cacm.acm.org/magazines/2017/9/220424-multitasking-without-thrashing/fulltext#body-5
  • Document Foundation. "LibreOffice: The Document Foundation." (Nov. 5, 2021) https://www.libreoffice.org/
  • Duarte, Gustavo. "How computers boot up." Gustavo Duarte: Software, Computers and Business. June 5, 2008. (Nov. 4, 2021) http://duartes.org/gustavo/blog/post/how-computers-boot-up
  • Electronic Frontier Foundation. "Oracle v. Google." (Nov. 5, 2021) https://www.eff.org/cases/oracle-v-google
  • "ENIAC - The History of the First Computer." Hyperaxion. March 11, 2020. (Nov. 5, 2021) https://hyperaxion.com/technology/eniac-first-computer/
  • "File Sharing Over a Network in Windows 10." Microsoft Support. (Nov. 5, 2021) https://support.microsoft.com/en-us/windows/file-sharing-over-a-network-in-windows-10-b58704b2-f53a-4b82-7bc1-80f9994725bf
  • "Get More Done with Multitasking in Windows 11." Microsoft Support. (Nov. 5, 2021) https://support.microsoft.com/en-us/windows/get-more-done-with-multitasking-in-windows-11-b4fa0333-98f8-ef43-e25c-06d4fb1d6960
  • GIMP Team. "GIMP: GNU Image Manipulation Program." (Nov. 5, 2021) https://www.gimp.org/
  • Holmes, Jake and Alaniz, Anthony. "Every Car Infotainment System Available in 2020." Road Show by Cnet. Oct. 28, 2019. (Nov. 5, 2021) https://www.cnet.com/roadshow/news/car-infotainment-system-automotive-tech-guide/
  • "HPE OpenVMS." OpenVMS. Hewlett Packard Enterprise. (Nov. 5, 2021) https://buy.hpe.com/us/en/software/operating-systems/openvms/openvms-operating-systems/hpe-openvms/p/3364735
  • IBM. "C Shell Command Descriptions." 2020. (Nov. 5, 2021) https://www.ibm.com/docs/en/aix/7.1?topic=commands-c-shell-command-descriptions
  • IBM Cloud Education. "Application Programming Interface (API)." IBM Cloud Learn Hub. Aug. 19, 2020. (Nov. 5, 2021) https://www.ibm.com/cloud/learn/api
  • "Interrupts." ComputerScience.GCSE.GURU. (Nov. 5, 2021) https://www.computerscience.gcse.guru/theory/interrupts
  • Jones, M. "Inside the Linux 2.6 Completely Fair Scheduler." IBM Developer. Dec. 15, 2009. (Nov. 5, 2021) https://developer.ibm.com/tutorials/l-completely-fair-scheduler/?mhsrc=ibmsearch_a&mhq=symmetric%20process
  • Jones, M. "Inside the Linux Boot Process." IBM Developer. May 31, 2006. (Nov. 5, 2021) https://developer.ibm.com/articles/l-linuxboot/
  • Kalinsky, David. "Basic concepts of real-time operating systems." LinuxDevices.com. Nov. 18, 2003. (Nov. 4, 2021) https://web.archive.org/web/20090309085506/http://www.linuxdevices.com/articles/AT4627965573.html
  • Kelm, Robert. "What is Embedded System Design? Defining an Electrical Engineering Field." All About Circuits. Aug. 6, 2018. (Nov. 5, 2021) https://www.allaboutcircuits.com/technical-articles/what-is-embedded-design-embedded-system-design-firmware/
  • Ku, Andrew. "Microsoft Surface Review, Part 1: Performance and Display Quality." Tom's Hardware. Nov. 5, 2012. (Nov. 5, 2021) https://www.tomshardware.com/reviews/surface-benchmarks-windows-rt,3335-3.html
  • Linux.com Editorial Staff. "All About Linux Swap Space." Linux.com. Sept. 7, 2007. (Nov. 5, 2021) https://www.linux.com/news/all-about-linux-swap-space/
  • Lunduke, Bryan. "Without a GUI—How to Live Entirely in a Terminal." Linux Journal. June 28, 2019. (Nov. 5, 2021) https://www.linuxjournal.com/content/without-gui-how-live-entirely-terminal
  • Lydia. "Advantages and Disadvantages of API for Business." OpenVPN. (Nov. 5, 2021) https://openvpn.net/blog/advantages-and-disadvantages-of-api-for-business/
  • "Mainframe Concepts." z/OS Basic Skills. IBM. 2010. (Nov. 5, 2021) https://www.ibm.com/docs/en/zos-basic-skills?topic=today-what-is-mainframe-its-style-computing
  • "Networking." IBM Cloud Learn Hub. IBM. March 17, 2021. (Nov. 5, 2021) https://www.ibm.com/cloud/learn/networking-a-complete-guide
  • Open Source Initiative. "The Open Source Definition." March 22, 2007. (Nov. 5, 2021) https://opensource.org/osd
  • "Operating Systems: Homework I Solution." University of Massachusetts (archived on Internet Archive). (Nov. 5, 2021) https://web.archive.org/web/20190320223658/http:/ecs.umass.edu/ece/andras/courses/ECE397A/homeworks/hw1soln.html
  • Pal, Trishla. "Memory Management in Operating Systems - Simple Explanation." Technobyte. (Nov. 5, 2021) https://technobyte.org/memory-management-os-simple-explanation/
  • PCMag. "BIOS." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/bios
  • PCMag. "Boot Loader." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/boot-loader
  • PCMag. "Kernel." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/kernel
  • PCMag. "Operating System." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/operating-system
  • PCMag. "Process." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/process
  • PCMag. "Suspend and Resume." (Nov. 5, 2021) https://www.pcmag.com/encyclopedia/term/suspend-and-resume
  • Prakash, Abhishek. "Linux Jargon Buster: What is Desktop Environment in Linux?" It's FOSS. Sept. 3, 2020. (Nov. 5, 2021) https://itsfoss.com/what-is-desktop-environment/
  • "Processes and Threads." Windows App Development. Microsoft. Jan. 7, 2021. (Nov. 5, 2021) https://docs.microsoft.com/en-us/windows/win32/procthread/processes-and-threads
  • "Public API Lists." GitHub. (Nov. 5, 2021) https://github.com/public-api-lists/public-api-lists
  • Raspberry Pi Foundation. "Distributed Computing with Raspberry Pi." (Nov. 5, 2021) https://projects.raspberrypi.org/en/pathways/octapi
  • "Real-Time Operating System." Azure. Microsoft. Feb. 14, 2020. (Nov. 5, 2021) https://azure.microsoft.com/en-us/resources/real-time-operating-system/
  • Riley, Kurt. "Korn Shell Scripting: A Beginner's Guide." IBM Developer. June 17, 2008. (Nov. 5, 2021) https://developer.ibm.com/articles/au-kornshellscripting/
  • Russinovich, Mark E. and David A. Solomon. "Processes, Threads and Jobs." Microsoft Windows Internals, Fourth Edition: Microsoft Windows Server 2003, Windows XP and Windows 2000. (Nov. 4, 2021) https://web.archive.org/web/20060701201904/http://download.microsoft.com/download/5/b/3/5b38800c-ba6e-4023-9078-6e9ce2383e65/C06X1116607.pdf
  • ScienceDirect. "Buffer Management." (Nov. 5, 2021) https://www.sciencedirect.com/topics/computer-science/buffer-management
  • ScienceDirect. "Non-Maskable Interrupt." (Nov. 5, 2021) https://www.sciencedirect.com/topics/computer-science/non-maskable-interrupt
  • ScienceDirect. "Symmetric multiProcessor." (Nov. 5, 2021) https://www.sciencedirect.com/topics/computer-science/symmetric-multiprocessor
  • "Secure Boot." Windows Hardware Developer. Microsoft. Jan. 11, 2021. (Nov. 5, 2021) https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/oem-secure-boot
  • Silberschatz, Abraham; Galvin, Peter Baer; and Gagne, Greg.. Operating System Concepts. 10th ed. Wiley. (Nov. 5, 2021) https://www.wiley.com/en-us/Operating+System+Concepts%2C+10th+Edition-p-9781119320913
  • Todino, Grace; Strang, John; Peek, Jerry. "Versions of UNIX." Learning the UNIX Operating System, 4th edition. O'Reilly Media. 1997. (Nov. 5, 2021) https://learning.oreilly.com/library/view/learning-the-unix/1565923901/pr01s02.html
  • "UEFI FAQs." Unified Extensible Firmware Interface Forum. (Nov. 5, 2021) https://uefi.org/faq
  • Mullins, Robert. "Distributed Computing." University of Cambridge Department of Computer Science and Technology. 2012. (Nov. 5, 2021) https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/distributed-computing/
  • Vivian, Amy. "What is a driver?" Windows Hardware Developer. Microsoft. Aug. 8, 2021. (Nov. 5, 2021) https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/what-is-a-driver-
  • W3Schools. "What is Command Line Interface (CLI)?" (Nov. 5, 2021) https://www.w3schools.com/whatis/whatis_cli.asp
  • WDD Staff. "Operating System Interface Design Between 1981-2009." Web Designer Depot. March 11, 2009. (Nov. 15, 2021) https://www.webdesignerdepot.com/2009/03/operating-system-interface-design-between-1981-2009/
  • "What is a Real-Time Operating System (RTOS)?" National Instruments. Sept. 3, 2020. (Nov. 5, 2021) https://www.ni.com/en-us/innovations/white-papers/07/what-is-a-real-time-operating-system—rtos—.html
  • "What is Distributed Computing." TXSeries for Multiplatforms. IBM. 2015. (Nov. 5, 2021) https://www.ibm.com/docs/en/txseries/8.2?topic=overview-what-is-distributed-computing
  • White, Ron and Timothy Edward Downs. How Computers Work: The Evolution of Technology, 10th ed. Indianapolis, Ind.: Que. 2015. (Nov. 6, 2021) https://learning.oreilly.com/library/view/how-computers-work/9780133096798/
  • Williams, Lawrence. "Paging in Operating System(OS)." Guru99. Nov. 1, 2021. (Nov. 5, 2021) https://www.guru99.com/paging-in-operating-system.html
  • Yoshino, Ben. "The C Shell Tutorial." Duke University Computer Science. March 7, 1994. (Nov. 5, 2021) https://www2.cs.duke.edu/csl/docs/csh.html

Featured