Podcast
Questions and Answers
A ___________ interface employs the same display technology as a CLI, but presents a full-screen interface rather than the scrolling command-and-response output used in a CLI.
A ___________ interface employs the same display technology as a CLI, but presents a full-screen interface rather than the scrolling command-and-response output used in a CLI.
text user
GUIs are well-suited to ___________ tasks, such as editing images and documents.
GUIs are well-suited to ___________ tasks, such as editing images and documents.
graphical
CLIs are well-suited to ___________ tasks, such as mass-conversion of thousands of images.
CLIs are well-suited to ___________ tasks, such as mass-conversion of thousands of images.
automation
A typical CLI display contains about ___________ of data.
A typical CLI display contains about ___________ of data.
A typical HD GUI display contains about ___________ of data.
A typical HD GUI display contains about ___________ of data.
Before Microsoft Windows and the Apple Macintosh existed, text user interfaces were the dominant form of interface on ___________ computers.
Before Microsoft Windows and the Apple Macintosh existed, text user interfaces were the dominant form of interface on ___________ computers.
In the very early days of computing, ___________ was impossible, because many of the computers were one-of-a-kind!
In the very early days of computing, ___________ was impossible, because many of the computers were one-of-a-kind!
Text user interfaces are still very common in ___________ business applications, such as your bank.
Text user interfaces are still very common in ___________ business applications, such as your bank.
Unlike the kernel, these programs do not operate with full system ______,
Unlike the kernel, these programs do not operate with full system ______,
These programs are subject to the same types of ______ and security management as regular programs.
These programs are subject to the same types of ______ and security management as regular programs.
The user interface is the software that enables the user to interact with the ______.
The user interface is the software that enables the user to interact with the ______.
A graphical user interface (GUI) that typically enables the user to interact with multiple application ______.
A graphical user interface (GUI) that typically enables the user to interact with multiple application ______.
Utilities may use the GUI or ______.
Utilities may use the GUI or ______.
Most operating systems provide a set of ______ to enable users to perform setup, configuration, and maintenance tasks.
Most operating systems provide a set of ______ to enable users to perform setup, configuration, and maintenance tasks.
Most operating systems also provide a set of basic starter ______, such as a text editor, clock, a few games, and sometimes a web browser.
Most operating systems also provide a set of basic starter ______, such as a text editor, clock, a few games, and sometimes a web browser.
The user interface enables the user to enter ______, view the output from those commands, and interact with full-screen text interfaces.
The user interface enables the user to enter ______, view the output from those commands, and interact with full-screen text interfaces.
DOS was a single-tasking system and did not have a ______ filesystem.
DOS was a single-tasking system and did not have a ______ filesystem.
Microsoft introduced features from ______ into DOS starting with version 2.0 in 1983.
Microsoft introduced features from ______ into DOS starting with version 2.0 in 1983.
DOS couldn’t use the forward-slash in filenames, because that character was already being used for another purpose, so DOS pathnames used the ______ character.
DOS couldn’t use the forward-slash in filenames, because that character was already being used for another purpose, so DOS pathnames used the ______ character.
As the IBM PC models – and compatible systems from other manufacturers – grew in their ______, it became necessary to extend DOS to take advantage of these new features.
As the IBM PC models – and compatible systems from other manufacturers – grew in their ______, it became necessary to extend DOS to take advantage of these new features.
DOS had a unique combination of ______-like features, with some differences originating from its original CP/M-like heritage.
DOS had a unique combination of ______-like features, with some differences originating from its original CP/M-like heritage.
MS-DOS takes on ______ Features.
MS-DOS takes on ______ Features.
DOS was a single-tasking system and did not have a ______ filesystem, unlike Unix.
DOS was a single-tasking system and did not have a ______ filesystem, unlike Unix.
Microsoft introduced features from their version of ______ into DOS starting with version 2.0 in 1983.
Microsoft introduced features from their version of ______ into DOS starting with version 2.0 in 1983.
The _______________ operating system was originally written for just one type of computer.
The _______________ operating system was originally written for just one type of computer.
Bell Labs was involved with the _______________ project, but withdrew early in its development.
Bell Labs was involved with the _______________ project, but withdrew early in its development.
Microsoft licensed the _______________ operating system from Bell Labs and created a derivative called Xenix.
Microsoft licensed the _______________ operating system from Bell Labs and created a derivative called Xenix.
One customer of a cloud server shouldn’t be able to access another customer’s ______
One customer of a cloud server shouldn’t be able to access another customer’s ______
IBM contracted _______________ to provide an operating system in 1981.
IBM contracted _______________ to provide an operating system in 1981.
The design and internal structure of PC-DOS and MS-DOS was largely based on _______________.
The design and internal structure of PC-DOS and MS-DOS was largely based on _______________.
The OS hides the details of the ______ so that application software can deal with the hardware in a consistent manner.
The OS hides the details of the ______ so that application software can deal with the hardware in a consistent manner.
A program can request input from the ______ without knowing how the keyboard is connected.
A program can request input from the ______ without knowing how the keyboard is connected.
Dennis Ritchie and Ken Thompson, went on to develop a smaller operating system using some of the same concepts, which they named _______________.
Dennis Ritchie and Ken Thompson, went on to develop a smaller operating system using some of the same concepts, which they named _______________.
Unix was popular with the many different hardware vendors that existed at that time, because it eliminated the need for them to each develop their own _______________.
Unix was popular with the many different hardware vendors that existed at that time, because it eliminated the need for them to each develop their own _______________.
An application can send data to the ______ in the same way regardless of whether the connection uses wired ethernet, WiFi, or 5G.
An application can send data to the ______ in the same way regardless of whether the connection uses wired ethernet, WiFi, or 5G.
The source code of _______________ was widely available for study in academia.
The source code of _______________ was widely available for study in academia.
The operating system will use the ______ virtual memory system to load those programs into different regions of physical memory.
The operating system will use the ______ virtual memory system to load those programs into different regions of physical memory.
Programmers (Software Developers) need a single conceptual ______ when creating software.
Programmers (Software Developers) need a single conceptual ______ when creating software.
The OS controls the ______ (and works with tools such as the compiler) to consistently maintain the illusion of the programmer’s model.
The OS controls the ______ (and works with tools such as the compiler) to consistently maintain the illusion of the programmer’s model.
Multiple programs may be written to work in the same region of ______.
Multiple programs may be written to work in the same region of ______.
Various standard bodies, including the _______________, The Open Group, and ISO created standards to define what a “Unix-like” operating system should contain and how it should operate.
Various standard bodies, including the _______________, The Open Group, and ISO created standards to define what a “Unix-like” operating system should contain and how it should operate.
Ultimately, Unix became a _______________ rather than a product, and any operating system that was tested and proven to conform to the Unix standards was granted permission to use the Unix trademark.
Ultimately, Unix became a _______________ rather than a product, and any operating system that was tested and proven to conform to the Unix standards was granted permission to use the Unix trademark.
Many contemporary operating systems are regarded as Unix-like, although few have gone through official _______________ testing.
Many contemporary operating systems are regarded as Unix-like, although few have gone through official _______________ testing.
Apple’s MacOS is officially a _______________ system.
Apple’s MacOS is officially a _______________ system.
Linux is not officially a _______________ system.
Linux is not officially a _______________ system.
We’re going to focus on two operating systems: Windows (version 10), a common proprietary operating system, and _______________, representing Unix-like operating systems.
We’re going to focus on two operating systems: Windows (version 10), a common proprietary operating system, and _______________, representing Unix-like operating systems.
A _______________ program which accepts user input from a keyboard and displays text output.
A _______________ program which accepts user input from a keyboard and displays text output.
Windows 10 is installed on the lab computers. A _______________ CLI is available by remote connection (through a tool called SSH) to a large server system called Matrix.
Windows 10 is installed on the lab computers. A _______________ CLI is available by remote connection (through a tool called SSH) to a large server system called Matrix.
A shell which interprets commands, starts and stops programs, displays the output of those programs, and enables the user to interact with those programs is called a ______ shell.
A shell which interprets commands, starts and stops programs, displays the output of those programs, and enables the user to interact with those programs is called a ______ shell.
Bash is a shell widely used on ______ systems, also available on Windows.
Bash is a shell widely used on ______ systems, also available on Windows.
A small number of commands are built into the ______.
A small number of commands are built into the ______.
Most commands have a similar structure: _______name arguments.
Most commands have a similar structure: _______name arguments.
CMD is a shell available only on ______ systems.
CMD is a shell available only on ______ systems.
Commands may also be called ______, utilities, applications, or executables.
Commands may also be called ______, utilities, applications, or executables.
In this course, we’re going to focus on ______ and CMD.
In this course, we’re going to focus on ______ and CMD.
PowerShell is a shell widely used on ______ systems, also available on Linux.
PowerShell is a shell widely used on ______ systems, also available on Linux.
GUIs were added to Unix systems starting in 1984 with the introduction of the ___________ Window System from Project Athena at MIT.
GUIs were added to Unix systems starting in 1984 with the introduction of the ___________ Window System from Project Athena at MIT.
DOS received multi-tasking abilities and a GUI with the introduction of ___________ 1.0 in 1985.
DOS received multi-tasking abilities and a GUI with the introduction of ___________ 1.0 in 1985.
Sun ___________ (1982) was one of the early GUI systems.
Sun ___________ (1982) was one of the early GUI systems.
Unix was originally a proprietary product of ___________ Labs / AT&T.
Unix was originally a proprietary product of ___________ Labs / AT&T.
Eventually, Unix became a family of related operating systems customized by various vendors and sold under many different names (XENIX, AIX, Ultrix, HP/UX, and ___________).
Eventually, Unix became a family of related operating systems customized by various vendors and sold under many different names (XENIX, AIX, Ultrix, HP/UX, and ___________).
The introduction of ___________ NT 3.1 in 1993 marked a new 32-bit operating system that combined features from DOS/Windows and OS/2.
The introduction of ___________ NT 3.1 in 1993 marked a new 32-bit operating system that combined features from DOS/Windows and OS/2.
Microsoft-IBM developed a jointly operating system named ___________/2.
Microsoft-IBM developed a jointly operating system named ___________/2.
All modern versions of Windows are derived from ___________ NT.
All modern versions of Windows are derived from ___________ NT.
The party which controls these works – either the employer of the author, or the ______ themselves if outside of an employment context – is the copyright holder.
The party which controls these works – either the employer of the author, or the ______ themselves if outside of an employment context – is the copyright holder.
There are two broad categories of software licenses in use: Proprietary licenses – the ______ holder provides the software to other parties on a limited basis, often for a fee.
There are two broad categories of software licenses in use: Proprietary licenses – the ______ holder provides the software to other parties on a limited basis, often for a fee.
Open Source Licenses are further divided into two categories: Free Software Licenses – these licenses require anyone redistributing the software to do so under the same ______ as the software was received.
Open Source Licenses are further divided into two categories: Free Software Licenses – these licenses require anyone redistributing the software to do so under the same ______ as the software was received.
Permissive Licenses – these licenses allow the open source software to be redistributed without the same ______ as the software was received under.
Permissive Licenses – these licenses allow the open source software to be redistributed without the same ______ as the software was received under.
The ______ holder can license the software to another party.
The ______ holder can license the software to another party.
Open Source Licenses – the ______ holder permits other parties to use the software under one of the licenses that conform to the Open Source Definition.
Open Source Licenses – the ______ holder permits other parties to use the software under one of the licenses that conform to the Open Source Definition.
The human-readable source code for the software is usually not provided in ______ licenses.
The human-readable source code for the software is usually not provided in ______ licenses.
This enables other parties to alter, adapt, change, rebuild, use, and sell the software, subject to certain ______.
This enables other parties to alter, adapt, change, rebuild, use, and sell the software, subject to certain ______.
Arguments are zero or more tokens for the command, which could be ___________
Arguments are zero or more tokens for the command, which could be ___________
An option with a value consists of an option immediately followed by a ___________
An option with a value consists of an option immediately followed by a ___________
Positional arguments are all other arguments, and their ___________ may be significant
Positional arguments are all other arguments, and their ___________ may be significant
The command ls -l selects ___________ output
The command ls -l selects ___________ output
The command dir /b selects ___________ output
The command dir /b selects ___________ output
The option -h in the command ls -l -h shows sizes in a ___________ format
The option -h in the command ls -l -h shows sizes in a ___________ format
The option -sort=time in the command ls -l -sort=time shows files sorted by ___________
The option -sort=time in the command ls -l -sort=time shows files sorted by ___________
The command cp old new copies the file old to a new file called ___________
The command cp old new copies the file old to a new file called ___________
Study Notes
Operating System History
- Multics, an OS developed at MIT starting around 1965, influenced many modern operating systems.
- Bell Labs was involved in the Multics project, but withdrew early, and two employees, Dennis Ritchie and Ken Thompson, went on to develop Unix.
- Unix was originally written for one type of computer, but was soon made portable to work on multiple types of computers.
Unix
- Unix was popular with hardware vendors because it eliminated the need for them to develop their own operating systems.
- Unix was also popular in academia because the source code was widely available for study.
- Microsoft licensed Unix from Bell Labs and created a derivative called Xenix for small computer systems.
CP/M and PC-DOS / MS-DOS
- CP/M (Control Program/Monitor) was another popular operating system.
- IBM contracted Microsoft to provide an operating system, which led to the development of PC-DOS (IBM version) and MS-DOS (version directly available from Microsoft).
- The design and internal structure of these operating systems was largely based on CP/M.
User Interfaces
Command Line Interfaces (CLI)
- CLI is well-suited for automation, such as mass-conversion of images.
- CLI is not well-suited for occasional tasks.
Graphical User Interfaces (GUI)
- GUI is well-suited for graphical tasks, such as editing images and documents.
- GUI may require excessive repetitive actions in some situations.
- GUI requires far more data than CLI, making CLI often used over remote connections.
Text User Interfaces (TUI)
- TUI employs the same display technology as CLI, but presents a full-screen interface.
- TUI was the dominant form of interface on personal computers before Microsoft Windows and Apple Macintosh existed.
- TUI is still common in traditional business applications, such as banking.
History of Computing
- In the early days of computing, nothing was standardized, and standardization was impossible.
- Unlike the kernel, programs do not operate with full system privilege and are subject to resource and security management.
The User Interface(s)
- The user interface is the software that enables the user to interact with the system.
- Most operating systems provide at least two types of user interfaces: text-based (CLI) and graphical (GUI).
Utilities and Applications
- Most operating systems provide a set of tools to enable users to perform setup, configuration, and maintenance tasks.
- Utilities may use the GUI or CLI.
- Most operating systems also provide a set of basic starter applications, such as a text editor, clock, and web browser.
MS-DOS
- MS-DOS was a single-tasking system and did not have a hierarchical filesystem.
- Microsoft introduced features from Xenix (their version of Unix) into MS-DOS starting with version 2.0 in 1983.
- MS-DOS had a unique combination of Unix-like features with some differences originating from its original CP/M-like heritage.
Hardware Abstraction
- The OS hides the details of the hardware so that application software can deal with the hardware in a consistent manner.
- Examples: a program can request input from the keyboard without knowing how the keyboard is connected, and an application can send data to the network regardless of the connection type.
Maintaining the Programming Model
- The OS controls the hardware to consistently maintain the illusion of the programmer's model.
- Example: multiple programs may be written to work in the same region of memory, but the OS will use the hardware virtual memory system to load those programs into different regions of physical memory, creating the illusion that each one is in the same portion of memory.
Unix-Like Operating Systems
- Unix became a trademark rather than a product, and operating systems that conform to Unix standards can use the Unix trademark.
- Apple's MacOS is officially a Unix system, but Linux is not.
- Other Unix-like operating systems include FreeBSD, OpenBSD, NetBSD, and many others.
Operating Systems in this Course
- This course will focus on two operating systems: Windows 10 (a proprietary operating system) and Linux (representing Unix-like operating systems).
- Windows 10 is installed on lab computers, and Linux is available through a remote connection to a server called Matrix.
Command Line and Commands
- A Command Line Interface (CLI) is provided by two components: a terminal program and a shell.
- The terminal program accepts user input and displays text output, while the shell interprets commands, starts and stops programs, and displays output.
- CLI programs can be mixed and matched for different contexts.
Common Shells
- Bash is a widely used shell on Linux systems, also available on Windows.
- PowerShell is a widely used shell on Windows systems, also available on Linux.
- CMD is a shell available only on Windows systems.
What is a Command?
- A small number of commands are built into the shell, while all other commands are separate programs contained in their own files.
- Commands may also be called programs, utilities, applications, or executables.
- Any GUI or CLI program, including web browsers, version control tools, or word processors, can be considered a command.
Command Structure
- Most commands have a similar structure, consisting of a command name and arguments.
- The command name is the name of a built-in command or a separate external program.
- Arguments are zero or more tokens for the command, which can be options, option values, or positional arguments.
Arguments
- Option (or switch or control argument): alters the operation of the command.
- Option with a value: an option immediately followed by a value.
- Positional arguments: all other arguments, where the position may be significant.
Open Source and Proprietary Software
- Software is protected by copyright, which controls how written works may be used.
- The copyright holder can license the software to another party under proprietary or open source licenses.
- Open source licenses conform to the Open Source Definition, allowing other parties to alter, adapt, change, rebuild, use, and sell the software.
Types of Open Source Licenses
- Free software licenses: require anyone redistributing the software to do so under the same terms as the software was received.
- Permissive licenses: allow the open source software to be redistributed without the same permissions as the software was received under.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
This quiz covers the history of operating systems, specifically the development of Multics and Unix at MIT and Bell Labs.