At the most fundamental level, an operating system serves as an intermediary—that is, a middleman—between a computer user and computer hardware (Bower, 2015). It is an extensive and complicated group of system programs that oversees the many operations of a computer and handles the management of computer resources (Garrido, Schlesinger, & Hoganson, 2013). Furthermore, it is arguably the most important component of system software, because without an operating system, a computer is rendered inoperable (Goodwill Community Foundation, Inc., 2017).
An operating system plays a significant role in facilitating communication between humans and computers because it allows one to indirectly “speak” to them, despite not being fluent in machine language. This is made possible with the use of a user interface, such as a command line or a graphical user interface (GUI) that enables users to interact with a computer by clicking on an array of graphic objects that appear on the screen, such as icons, buttons, and menus (Goodwill Community Foundation, Inc., 2017). These interfaces allow the operating system to abstract out the smaller, more unnecessary details related to the computer’s underlying hardware. If operating systems did not exist, then one would need to know all of these details in order to make anything run (Wienand, 2016).
Aside from acting as a communication interface, operating systems also perform crucial functions such as ensuring system security. The operating system is in charge of controlling access to system resources, such as the central processing unit (CPU), memory, file storage, external devices, and network connections (Hemmendinger, 2017). In other words, it checks that only those with proper permissions can use system resources. For instance, if one file is owned by User 1, User 2 should not be permitted to open the file, read the file, or make changes to the file  .
Figure 1. The operating system acts as an intermediary between users and computer hardware (Bower, 2015)
The three most commonly used operating systems are Linux, Unix, and Windows . This paper will concentrate its attention on the Mac operating system, macOS, a Unix-based operating system developed by Apple Inc. Before turning our focus to the technicalities of macOS, we will describe a timeline that charts the inception, growth, and development of the Mac operating system and outline its transformation over the years. Following this, we will present an overview of the architecture that makes up macOS and explore each of its components in detail. After, we will consider the advantages that macOS provides over other operating systems, as well as the tradeoffs that come with it. Finally, we will analyze the current direction of macOS and theorize about its future possible trajectories.
macOS has come quite a long way from where it began in 1984 when Steve Jobs released the first Macintosh computer on stage at a community college in Cupertino, California. Weighing in at 22 pounds and costing a whopping $2,500 (or $6,000 when adjusted for inflation), it was promised to be “the computer you know how to use.” At that time, the computer was unlike any other. Its pleasing GUI and ground-breaking design caused it to receive high praise from big names, such as Consumer Reports, despite the fact that it only had 128 kilobytes of memory (enough for just under nine pages) once the operating system was installed (Pierce, 2014).
Just one year after the first computer was released, Steve Jobs was forced to leave Apple and set out to create “the next big thing.” Job’s idea was to design what he called “the perfect research computer” (Singh, 2003). Jobs, joined by five previous Apple employees, spent the next three years bringing the idea to life. What resulted was named the NeXT Computer workstation, the first computer to include a digital signal processor. Its accompanying operating system was called NeXTSTEP.
NeXTSTEP went through a number of iterations over the next two years and was transformed into a powerful Objective-C operating system with a highly praised, postscript-based GUI. NeXTSTEP boasted many achievements, such as being the first platform on which a web browser was designed. Further down the road, NeXTSTEP evolved into OPENSTEP, a platform that would allow users to design their own versions of the operating system. The NeXT computer was eventually discontinued, but OPENSTEP would become the foundation for what is known today as macOS.
Around the height of NeXT’s success, Apple was furiously trying to compete with Microsoft Windows. They were in an all-out race to release something big before Windows 95 was made available to the public (Dormehl, 2015). They ultimately lost that race when Pink OS, Apple’s failed venture with IBM, was ended. In response to the loss, Apple went on a full-fledged advertising campaign mocking Windows 95. Apple employees would drive around with bumper stickers comparing the new release to a four-year-old Mac operating system. They even posted a massive ad in the Wall Street Journal mocking the new system.
Unfortunately, Apple’s campaign did not go quite as they had planned. Consumers were lined up around the block on the Windows 95 release day, a feat very uncommon to see in those days. Users loved the start menu and seemed to enjoy the bold, bright colors that Apple had made it a point to avoid in their interface. A then Apple employee, David Curbow, was quoted as saying, “We had this big crash course to make everything look sexier, to make it more colorful. I think it was the first realization that we were not just building computers for people. We were building things that would look good enough that you wanted to buy them” (Dormehl, 2015). To make matters worse, Internet Explorer, which would soon become the first web browser for many, was released afterwards. It was clear that something had to be done to regain a competitive edge. In 1997, NeXT was purchased by Apple and development on Mac OS X began (Patton, 1993).
In September of 2000, Apple released an official preview version of OS X for $30 with the intention of getting opinions from the public. This release greatly improved on the classic Mac OS and had many updated features, including the famous Aqua user interface and the Darwin core, meeting long standing user demand for “preemptive multitasking” and “protected memory.” New native applications were also included. Features that are well known today, such as TextEdit, Preview, QuickTime, and even a pre-iTunes MP3 player, all began there (Siracusa, 2004).
The first full version of Mac OS X, 10.0, called Cheetah, was made available in March of 2001, just two months before the beta trial ended. Despite such a positive beta test, OS X 10.0 received plenty of user criticism. Much of this criticism was focused on three main areas: (1) compatibility, (2) responsiveness, and (3) stability. With this first release, users were not able to burn CDs or play DVDs. Although the Aqua GUI was called beautiful, it lagged terribly and resulted in response times plummeting (McElhearn, Timeline of Key Features Added to Every Mac OS X Release to Date, 2016). Users were fast to point out all of the issues that they ran into, such as kernel panic, which caused computers to continually restart for no apparent reason (Kuziv, 2017). These complaints ultimately convinced Apple to give its users a free upgrade to the next version, 10.01, of Mac OS X (Orlowski, 2001).
Moving forward in time, Mac OS X Jaguar 10.2 was released in August of 2002. This would be the world’s first look at many of the Mac features that are seen today. Things like QuickTime, Contacts, and the native mail client were all rolled out during this time. This would also be the start of using Quartz Extreme for smooth graphics rendering and image processing (Apple Inc., 2002). Users embraced this iteration and seemed to be much happier with the improvements included.
Moving down the line, Apple continued with its trend of announcing yearly to bi-yearly operating systems releases, each named after a large cat. Panther, Tiger, Leopard, Snow Leopard, Lion, and Mountain Lion made up the full lineup until the release of OS X Mavericks 10.9, in June of 2013. Mavericks was the tenth significant release from the OS X line and introduced many features. Apple promised its users that there would be more than 200 changes. The front-runner was major improvements to system efficiency, which included the batch processing of more low-level functions. This change allowed the CPU to remain in power-saving mode for longer stretches of time, ultimately reducing CPU utilization by 72% and showing a massive gain in battery life (MacRumors.com, LLC, 2017).
Moving ahead in time, Apple adopted a new naming convention, using names of mountain ranges located in California. The introduction of OS X Yosemite 10.10, in June of 2014, completely overhauled the UI. Flat-like elements completely replaced the more 3D icons. The overall theme became much more resemblant of the current iOS look and feel. Moving down the line there is El Capitan and Sierra. Starting with Sierra 10.12 Apple made the bold decision to rename Mac OS X to macOS. Today we have High Sierra and a much more feature-rich interface. Sierra and High Sierra offer a much more mobile-like experience and huge new feature set. Siri can now be accessed and the computers can be unlocked instantly. with TouchID. Picture in picture videos have and integrated apple pay have both also become user favorites.( http://www.imore.com/macos-sierra) Insert closing sentence here
The architecture of macOS consists of several layers: (1) the interface layer, (2) the applications layer, (3) the graphics layer, and (4) the core OS layer. An overview of these layers is given in Figure 3. Layers toward the top provide services that are “closer” to the user, whereas layers toward the bottom provide services that are “farther” from the user (Miser, 2004).
Figure 3. macOS architectural overview (Miser, 2004)
The Interface Layer
The interface layer, Aqua, is one of the first things that comes to mind for many Mac owners when they think of the “Mac Experience.” The UI, menus, Finder, Dock, as well as other key features are what primarily give the user the unique feeling of using a Mac. In most cases, this layer is all the user will ever really directly interact with (Landau, 2003). Aqua was originally designed to resemble a water-like theme; it incorporated a raindrop style with reflective and transparent components. Steve Jobs was quoted as saying that “one of the design goals was when you saw it you wanted to lick it” (Jobs, 2000).
Figure 4. The first version of the Aqua GUI
The Applications Layer
Below the interface layer is the application layer. This layer is comprised of four main environments: (1) the Classic Mac environment, (2) the Carbon environment, (3) the Cocoa environment, and (4) the Java 2 environment. The diversity of this layer greatly contributes to the robustness of macOS because it allows the operating system to be compatible with a wide variety of applications (Miser, 2004).
The primary purpose of the Mac Classic environment is to provide the operating system with a means to run legacy applications and programs that were written for previous versions of macOS. Because of this, literally thousands of applications that would otherwise be obsolete are still able to be utilized, and potentially improved, by making use of the configurable virtual memory of macOS. However, this feature is still not a perfect fix—running these legacy applications can cause graphic issues as well as reference errors due to the previous confusing files systems (Ray & Ray, 2003).
The Carbon environment is responsible for handling all OS X 8 and OS X 9 programs that have had their code optimized for current macOS compatibility (Sellers, 2001). By a process known as Carbonizing, it allows users to port older programs to make use of the Carbon application programming interface (API). Applications being run in this environment can take advantage of the benefits provided by Darwin, including “protected memory” and “preemptive multitasking.” One of the greatest things about Carbon is the amount of time that users save when they choose to Carbonize an application, rather than freshly rebuilding an updated version (Apple Inc., 2017).
Generally, when applications are designed for the current version of macOS, they are designed in the Cocoa environment. Cocoa makes use of object-oriented programming principles and is currently Apple’s native API (Gallagher, 2010). Many components of the applications built in this environment are highly automated in order to remain compliant with Apple’s “Human Interface Guidelines,” allowing them to make full use of the newest macOS features while simultaneously giving them a unique feel. Cocoa applications are rapidly becoming more and more predominant in the macOS world (Miller, 2017).
The final environment in the applications layer is the Java 2 environment. One of the primary draws of the Java 2 environment is that it gives users the ability to build entirely pure Java applications and applets using the Java development environment. Applications written in Java are some of the most common applications found on the web today. Because Java applications are so widespread, programming in the Java 2 environment provides a huge advantage over other alternatives because the resulting products will be cross-platform compatible (Zobkiw, 2003).
The Graphics Layer
The Mac operating system includes an advanced graphics layer, which has three main components: (1) Quartz Extreme, (2) OpenGL, and (3) QuickTime.
The first part of the graphics layer is known as Quartz Extreme. Quartz Extreme is responsible for handling the system’s 2D elements, such as interface graphics, fonts, and the rendering and antialiasing of images. If available, Quartz Extreme processes images using the system’s graphics card instead of using the machine’s CPU. This reduces the CPU load, effectively making the machine more responsive because it frees up the CPU to handle other processes. The engine driving Quartz Extreme is designed on top of the Acrobat Portable Format (PDF), a file format designed by Adobe Systems Incorporated. The text and graphics rendered in Quartz Extreme are crisp, clean, easily resized, and easily transferred between computers. Quartz Extreme allows the Mac operating system to display PDF files without using Adobe Acrobat Reader in Mac’s native Preview application (Chambers, 2012). The use of Quartz Extreme also eliminates the need for non-native font smoothing when working with PostScript fonts (Miser, 2004).
The second component of the graphics layer is OpenGL, an API that facilitates the use of 3D graphics. OpenGL is arguably the heart of the graphics system in macOS. Being an industry standard, OpenGL can take applications that were built to run on other operating systems, such as Windows and Unix, and more easily convert them to native macOS applications (Apple Inc., 2017). The Mac version of OpenGL gives users access to a wide variety of 3D graphics functions, such as texture mapping, transparency, antialiasing, atmospheric effects, and other special effects (Miser, 2004).
The final part of the graphics layer is QuickTime, a multimedia framework that handles a wide array of media formats on macOS, such as video, sound, animation, graphics, text, interactivity, and music (Apple Inc., 2017).
The Core OS Layer
One of the most distinctive characteristics of macOS is the core on which it is built upon. The operating system is structured around a Unix core named Darwin, which was modeled after the Berkeley Software Distribution (BSD) Unix version. Darwin is the primary facilitator of all I/O services for macOS allowing modern features like “plug and play” and “hot swapping.” Surprisingly, the code for Darwin is free to use for anyone without any special permissions.
At the heart of Darwin is a component called Mach. Mach is responsible for performing critical system operations. Mach that a unique space in memory is allocated each application. As a result, unexpected application freezes or shut-downs will not affect other running applications. Mach is in-charge of managing random access memory. This takes the burden of having to worry about memory usage off of the user, a welcomed change from Mac OS 9 and earlier. A third primary function of Mach is managing the CPU processes making sure that each application has the needed resources as well as the CPU running efficiently overall. (http://www.informit.com/articles/article.aspx?p=1552774).
Advantages, Disadvantages, and Future Possibilities
Apple supporters might claim that their MacBook laptops or Mac desktop computers eclipse other operating systems due to the logical synthesis of macOS and state-of-the-art hardware specifications. Meanwhile, Apple cynics may contend that the Mac operating system is markedly limited when compared to others, such as Windows, or that it is too costly a product (Bonheur, 2016). In truth, all operating systems come with their share of advantages and disadvantages, and macOS is no exception. macOS has numerous benefits that make it more attractive than other operating systems, in addition to shortcomings that may make other operating systems appear to be better options.
One of the strongest advantages of macOS lies in its advanced security technology. Part of the reason why macOS is so secure is because it is built on a Unix core—antivirus software is largely unnecessary on macOS devices because destructive software cannot be installed unless the user explicitly gives root access, that is, administrative privileges, to the harmful programs (Carson, 2011). macOS also offers many security features that keep its users and their data safe (McElhearn, OS X Security: Under the Hood Features That Protect Your Mac, 2016). For instance, Gatekeeper, a feature introduced in Mountain Lion and OS X Lion v10.7.5, makes it safer to download applications by putting additional checks in place to guard against malicious software, or malware, that users may unintentionally stumble upon (Apple Inc., 2017). It uses a process called code signing to verify the authenticity of an application’s publisher (McElhearn, OS X Security: Under the Hood Features That Protect Your Mac, 2016). iCloud Keychain, another helpful security feature, makes it easier for users to visit websites that require login credentials because it safely stores and encrypts account names, usernames, passwords, or credit card information that the user saves. This information is kept up-to-date and is synced across all of the user’s Apple devices (Apple Inc., 2017).
Ease-of-use is another trait that makes macOS advantageous. The Mac operating system offers an appealing and intuitive GUI that is somewhat similar to the GUI found in other Apple products, such as the iPhone and the iPad. Those who are familiar with iOS devices will find that navigating the user workflow of macOS in a desktop environment to be quite simple and straightforward (Bonheur, 2016). The logical organization of macOS makes for a very user-friendly interface. Even those unfamiliar with iOS devices will find that such a process is clear-cut, due to things being where one expects them to be (Miser, 2004).
An extension of macOS’ ease-of-use is the fact that it comes pre-stocked with useful applications, such as Pages, Numbers, and Keynote, the web browser Safari, the email client Mail, and communication apps such as Messages and FaceTime. For creative-minded professionals, Apple includes the photo-editing app iPhoto, the video-editing app iMovie, and the music-production app GarageBand (Bonheur, 2016). Figure 5 shows Launchpad, the application launcher in macOS Sierra, where all of these applications can be started (Apple Inc., 2017).
Perhaps one of the most compelling advantages of macOS in relation to other operating systems is its seamless integration with other Apple products (Bonheur, 2016). macOS will automatically recognize other Apple devices (Carson, 2011). Only individuals with several Apple devices can enjoy the benefit of painless data and information synchronization across multiple devices, without the need to use cloud-based drives such as OneDrive or Google Drive (Bonheur, 2016).
Figure 5. macOS Sierra application launcher (Apple Inc., 2017)
Although macOS may provide many enticing advantages over other operating systems, it is not without its drawbacks. Perhaps one of the most frequently cited reasons to use an operating system other than macOS is the steep price tag placed on Apple products. The only way to legally obtain legitimate macOS software is to purchase a Mac computer (Bonheur, 2016). Macs are expensive computers, with the latest iMacs, MacBooks, and MacBook Pros costing upwards of $1,300. A 15-inch MacBook Pro with 512 gigabytes (GB) of storage will set one back $2,799, for instance (Apple Inc., 2017).
Another significant disadvantage to macOS is its inflexibility with regards to hardware upgrades. With Windows computers, users can design and tailor their builds to their preferences and upgrade specific hardware parts whenever desired. However, most Mac computers cannot be upgraded effortlessly due to the integration of the Mac’s hardware components at the design and engineering levels (Bonheur, 2016). For those who enjoy tinkering with computers as a hobby, or for those who wish to lengthen the lifespan of their PC, this is somewhat disheartening and oftentimes a deal breaker when it comes to selecting an operating system. It is the same scenario for those who enjoy playing video games: gamers generally want the ability to easily upgrade hardware components so that they can keep up with and adapt to ever-changing game requirements.
Some users may also feel rather constrained by the fact that there are fewer software options available for macOS than there are for other operating systems, such as Windows (Carson, 2011). That is, macOS has a smaller application ecosystem, even though the gap is beginning to close. Many software developers may opt to develop for Windows before macOS in order to reach a larger audience (Bonheur, 2016). This is especially true when it comes to the highly specialized, harder-to-source software that is often found in industry-specific applications or at small and/or independent companies (Carson, 2011). For instance, there are fewer video game titles available for macOS than there are for Windows, although there has been a push more recently for greater support for gaming on macOS and Linux.
Despite Windows’ position as the most prominent and accessible desktop operating system in the world, Apple’s macOS has gained a significant following in recent years. Figure 6 and Figure 7 illustrate the results of an annual survey conducted by Stack Overflow about developers’ desktop operating system preferences. In 2016, although Windows operating systems as a whole prevailed with 52.2 percent of developers’ votes, macOS rose to 26.2 percent from its previous 18.7 percent in 2013, illustrating its progressively rising influence among web developers (Stack Exchange, Inc., 2017). It would not be surprising if this trend continued.
Figure 6. Stack Overflow’s Web Developer Survey Results (2016) – Desktop Operating System preferences (Stack Exchange, Inc., 2017)
Figure 7. Stack Overflow’s Web Developer Survey Results (2013) – Desktop Operating System preferences (Stack Exchange, Inc., 2017)
Beyond developer preferences, what does the future hold in store for macOS? Some believe that Apple’s iOS will ultimately replace macOS. Others, like programmer Steven Troughton-Smith, wouldn’t’ be surprised if Apple were to consolidate iOS and macOS into something new: “We’re far enough into the age of mobile that the big players are designing the OSes that’ll follow it—surprised if Apple isn’t doing the same. It’s not so crazy to think that Apple would want to replace both iOS and macOS with something new and more unified” (Snell, 2017).
Apple Inc. (2002, July 17). Apple Introduces “Jaguar,” the Next Major Release of Mac OS X. (Apple Inc.) Retrieved November 18, 2017, from http://www.apple.com/newsroom/2002/07/17Apple-Introduces-Jaguar-the-Next-Major-Release-of-Mac-OS-X/
Apple Inc. (2017). Carbon Accessibility. (Apple Inc.) Retrieved November 18, 2017, from http://developer.apple.com/documentation/applicationservices/carbon_accessibility
Apple Inc. (2017, November 17). Frequently Asked Questions About iCloud Keychain. (Apple Inc.) Retrieved November 18, 2017, from http://support.apple.com/en-us/HT204085
Apple Inc. (2017). MacBook Pro. (Apple Inc.) Retrieved November 19, 2017, from http://www.apple.com/shop/buy-mac/macbook-pro/15-inch
Apple Inc. (2017, March 29). macOS Sierra: Use Launchpad to View and Open Apps. (Apple Inc.) Retrieved November 18, 2017, from http://support.apple.com/kb/PH25704?viewlocale=en_OM&locale=en_OM
Apple Inc. (2017). OpenGL for macOS. (Apple Inc.) Retrieved November 18, 2017, from http://developer.apple.com/opengl/
Apple Inc. (2017). OS X: About Gatekeeper. (Apple Inc.) Retrieved November 18, 2017, from http://support.apple.com/en-us/HT202491
Apple Inc. (2017). What Is QuickTime? (Apple Inc.) Retrieved November 18, 2017, from http://documentation.apple.com/en/finalcutpro/usermanual/index.html#chapter=103%26section=1%26tasks=true
Bonheur, K. (2016, October 22). Advantages and Disadvantages of macOS. (Version Daily) Retrieved November 17, 2017, from http://www.versiondaily.com/advantages-disadvantages-mac-os-x/
Bower, T. (2015). Operating Systems Study Guide. Retrieved November 19, 2017, from http://faculty.salina.k-state.edu/tim/ossg/index.html
Carson, A. (2011, May 24). What Are the Advantages and Disadvantages of Mac OS? (Bright Hub) Retrieved November 18, 2017, from http://www.brighthub.com/computing/mac-platform/articles/73326.aspx
Chambers, M. L. (2012). OS X Mountain Lion All-in-One For Dummies. Hoboken: John Wiley & Sons, Inc.
Dormehl, L. (2015, August 24). How Apple Responded to the Release of Windows 95, 20 years Ago Today. (Cult of Mac) Retrieved November 19, 2017, from http://www.cultofmac.com/386189/how-apple-responded-to-the-release-of-windows-95-twenty-years-ago-today/
Gallagher, M. (2010, June 22). The Design of Every Mac Application. Retrieved November 18, 2017, from http://www.cocoawithlove.com/2010/06/design-of-every-mac-application.html
Garrido, J., Schlesinger, R., & Hoganson, K. (2013). Principles of Modern Operating Systems. Burlington: Jones & Bartlett Learning, LLC.
Goodwill Community Foundation, Inc. (2017). Computer Basics: Understanding Operating Systems. (Goodwill Community Foundation, Inc.) Retrieved November 15, 2017, from http://www.gcflearnfree.org/computerbasics/understanding-operating-systems/1/
Hemmendinger, D. (2017, August 28). Operating system (OS). (Encyclopædia Britannica, Inc.) Retrieved November 15, 2017, from http://www.britannica.com/technology/operating-system
Jobs, S. (2000). Macworld San Francisco 2000 – The Mac OS X Introduction (Pt.1).
Kuziv, I. (2017, July 28). What is a Kernel Panic on Mac and How to Fix it? (MacPaw Inc.) Retrieved November 19, 2017, from http://macpaw.com/how-to/fix-kernel-panic-on-macos
Landau, T. (2003, May 9). Understanding Mac OS X: In Depth. (Pearson Education, Peachpit) Retrieved November 18, 2017, from http://www.peachpit.com/articles/article.aspx?p=31702
MacRumors.com, LLC. (2017). Mavericks. (MacRumors.com, LLC) Retrieved November 19, 2017, from http://www.macrumors.com/roundup/os-x-mavericks/
McElhearn, K. (2016, February 22). OS X Security: Under the Hood Features That Protect Your Mac. (Intego) Retrieved November 18, 2017, from http://www.intego.com/mac-security-blog/os-x-security-under-the-hood-features-that-protect-your-mac/
McElhearn, K. (2016, February 18). Timeline of Key Features Added to Every Mac OS X Release to Date. (Intego) Retrieved November 18, 2017, from http://www.intego.com/mac-security-blog/timeline-of-key-features-added-to-every-mac-os-x-release-to-date/
Miller, C. (2017, August 29). Apple Shares Detailed Human Interface Guidelines for Developers Building ARKit Apps. (9to5Mac) Retrieved November 18, 2017, from http://9to5mac.com/2017/08/29/arkit-human-interface-guidelines/
Miser, B. (2004). Special Edition Using Mac OS X, v10.3 Panther. Que. Retrieved November 18, 2017, from http://etutorials.org/Mac+OS/using+mac+os+x+v10.3+panther/Part+I+Mac+OS+X+Exploring+the+Core/Chapter+1.+Mac+OS+X+Foundations/Mac+OS+X+Benefits/
Orlowski, A. (2001, September 26). Mac Loyalists Get Free OS X 10.1 Upgrade. (The Register) Retrieved November 17, 2017, from http://www.theregister.co.uk/2001/09/26/mac_loyalists_get_free_os/
Patton, P. (1993, June 1). Steve Jobs and the Next Big Thing. (Wired) Retrieved November 18, 2017, from http://www.wired.com/1993/06/steve-jobs-and-the-next-big-thing/
Pierce, D. (2014, January 24). The Mac Turns 30: A Visual History. (The Verge) Retrieved November 18, 2017, from http://www.theverge.com/2014/1/24/5340320/the-mac-turns-30-a-visual-history
Ray, J., & Ray, W. C. (2003, January 10). Running Classic Mac OS Applications. (Pearson Education, Informit) Retrieved November 18, 2017, from http://www.informit.com/articles/article.aspx?p=30485
Sellers, D. (2001, January 4). Road to Mac OS X: Carbon versus Cocoa. (IDG Communications, Inc.) Retrieved November 18, 2017, from http://www.macworld.com/article/1021535/macosx.html
Singh, A. (2003, December). What is Mac OS X? Retrieved November 19, 2017, from http://osxbook.com/book/bonus/ancient/whatismacosx/history.html
Siracusa, J. (2004). Mac OS X Public Beta. (Ars Technica, LLC) Retrieved November 18, 2017, from http://archive.arstechnica.com/reviews/4q00/macosx-pb1/macos-x-beta-1.html
Snell, J. (2017, August 25). iOS and macOS: What Does the Future Hold? (IDG Communications, Inc.) Retrieved November 18, 2017, from http://www.macworld.com/article/3219695/ios/future-of-ios-and-macos.html
Stack Exchange, Inc. (2017). Stack Overflow Developer Survey 2016 Results. (Stack Exchange, Inc.) Retrieved November 17, 2017, from http://insights.stackoverflow.com/survey/2016#technology-desktop-operating-system
Wienand, I. (2016). Computer Science from the Bottom Up. Retrieved November 14, 2017, from http://www.bottomupcs.com/chapter03.xhtml
Zobkiw, J. (2003). Mac OS X: Advanced Development Techniques. Indianapolis: Sams Publishing.
API: a set of commands, functions, protocols, and objects that programmers can use to create software; it provides developers with standard commands for performing common operations so that they do not have to write code from scratch
Application programming interface (API): a set of commands, functions, protocols, and objects that programmers can use to create software; provides developers with standard commands for performing common operations so that they do not have to write code from scratch
Central processing unit (CPU): the primary component of a computer that processes instructions; it runs the operating system and applications, constantly receiving input from the user or active software programs; it processes the data and produces output, which may be stored by an application or displayed on the screen
Code signing: the method of using a certificate-based digital signature to sign executables and scripts in order to verify an author’s identity and ensure that code has not been changed or corrupted since it was signed by the author; helps users and other software determine whether the software can be trusted
CPU: the primary component of a computer that processes instructions; it runs the operating system and applications, constantly receiving input from the user or active software programs; it processes the data and produces output, which may be stored by an application or displayed on the screen
Gatekeeper: a security feature of the macOS operating system by Apple that enforces code signing and verifies downloaded applications before allowing them to run, thereby reducing the likelihood of inadvertently executing malware
Graphical user interface (GUI): a type of user interface that allows users to interact with electronic devices through graphic icons and visual indicators, instead of text-based user interfaces, typed command labels, or text navigation
GUI: a type of user interface that allows users to interact with electronic devices through graphic icons and visual indicators, instead of text-based user interfaces, typed command labels, or text navigation
iCloud Keychain: a security feature of the macOS operating system that keeps a user’s Safari website usernames and passwords, credit card information, and Wi-Fi network information up to date across all approved devices
Kernel panic: a safety measure taken by an operating system’s kernel upon detecting an internal fatal error from which it cannot safely recover from, or where the system cannot continue to run without risking major data loss
Malicious software (“malware”): an umbrella term used to refer to a variety of forms of hostile or intrusive software, including computer viruses, worms, Trojan horses, ransomware, spyware, adware, scareware, and other malicious programs
Malware: an umbrella term used to refer to a variety of forms of hostile or intrusive software, including computer viruses, worms, Trojan horses, ransomware, spyware, adware, scareware, and other malicious programs
Root: refers to the top-level directory of a file system; the username or account that, by default, has access to all commands and files on a Linux or other Unix-like operating system
Unix: a popular multi-user, multitasking operating system developed at Bell Labs in the early 1970s; it was designed for flexibility and adaptability; it has become a leading operating system for workstations, but historically has been less popular in the personal computer market
Ali Amin is a senior pursuing a degree in Information Systems at the University of North Florida. He is expected to graduate in Fall 2018. Ali is currently living in Jacksonville, Florida.
Katie Grubbs is a senior pursuing a degree in Information Science at the University of North Florida. She is expected to graduate in Summer or Fall 2018. Katie currently lives in St. Johns, Florida, but has lived in quite a few other places (including Japan) due to her family’s military background. In Summer 2017, she interned at APPX Software, Inc. as a business application developer. She is currently in the midst of senior project and hopes to obtain a position with a software development company upon graduation.
Daniel Lee is a junior pursuing a degree in Information Systems at the University of North Florida. He is expected to graduate in Summer or Fall 2019. Daniel currently lives in Middleburg, Florida.
Matthew Ramsay is a senior at the University of North Florida. Upon graduating, he will have earned a Bachelor’s of Business Administration with a concentration in Accounting, as well as a Bachelor’s of Science with a concentration in Computer and Information Science. Matthew is an active member of his community and takes the time to help others whenever possible. In his free moments, Matthew enjoys spending time in nature and striving to maintain a healthy lifestyle. Aside from school, Matthew is a candidate engineer at feature, a local consulting/software-engineering firm that focuses on innovation in the software industry. Matthew plans to graduate in Summer 2018.
• check for consistent use of abbreviations vs full words, such as: