1. Running head: TSI/OS REVIEW 1
Top Secret Incorporated (TSI) Operating Systems
a Review and Recommendations
Erik W. House
For Raymond Horton M.E.d
IT 600
Southern New Hampshire University
Submitted 10/9/2016
2. TSI/OS REVIEW 2
Abstract
Top Secret Incorporated (TSI) has made itself a successful competitor in the private sector
developing an operating system that is designed for security terminals, drone operations, and
other low key systems that haven’t required many of the features of a modern operating system.
However, TSI attempted to use the TSI/OS as a solution to their own backend needs. This
worked initially, but has since become a financial and security risk for the company. An
evaluation of the failures of the TSI/OS and a recommendation for movement to a new operating
system has been conducted.
Keywords: TSI, TSI/OS, Operating System, Operating Systems, Windows, Windows 10
3. TSI/OS REVIEW 3
Top Secret Incorporated (TSI) Operating Systems
a Review and Recommendations
4. TSI/OS REVIEW 4
Abstract ............................................................................................................................... 2
Top Secret Incorporated (TSI) Operating Systems a Review and Recommendations ....... 3
Analysis............................................................................................................................... 7
Multiprogramming:......................................................................................................... 7
Security ........................................................................................................................... 8
Device Drivers ................................................................................................................ 8
Deadlock: ........................................................................................................................ 9
Avoiding the Deadlock...................................................................................................... 10
Summary of Business Challenges..................................................................................... 10
Consumer Challenges ....................................................................................................... 12
Multiprogramming:................................................................................................... 12
Recommendation .............................................................................................................. 13
Architecture................................................................................................................... 13
Hardware................................................................................................................... 13
Support and functionality.......................................................................................... 13
Processes Management ................................................................................................. 14
Deadlock ................................................................................................................... 14
Memory Management................................................................................................... 14
I/O and Mass Storage.................................................................................................... 14
Security ......................................................................................................................... 15
7. TSI/OS REVIEW 7
Analysis
During the review of TSI/OS use as a backend operating system a number of tables were
created to compare the TSI/OS with modern operating systems. These charts have been included
to help provide a comprehensive review of the issues that TSI has been facing. We have selected
a few to highlight as failures of the TSI/OS’s backend use, a few are being emphasized in
addition to their mention in the background concerns because of how significantly they’ve
interfered with our business.
Multiprogramming:
A feature that most operating systems have featured since the mid to late twentieth-
century is that of multiprogramming or in other words being able to run multiple programs as
once (Multitasking. n.d.; Tanenbaum & Bos, 2015). . The TSI/OS lacked this feature since, it’s
primary use for our clients has not required more than one program to be run at once. However,
the modern business world requires that employees to be able to run multiple programs at once.
Our sales and customer support departments have faced particular issues with the lack of this
feature. Sales is unable to have spreadsheets and our email system up at the same time, nor the
digital phonebook and records of sales for a particular client; this delays their effectiveness in
gaining us new clients.
What has hurt our bottom-line is the major delay and customer frustration that these
similar delays have caused for our customer support team. Instead of being able to have the help
desk system up at the same time as a runtime environment, the support team needs to write down
8. TSI/OS REVIEW 8
all the errors that the customer has faced, then look through the knowledgebase. If the client is
on the phone with the support team this has lead to three to four hour calls for our small support
team. If the support team is trying to communicate with the client via email the delays are
similar not allowing for quick resolutions of the problems our clients have. Since we also lack a
multiprogramming feature we’re also unable to creative an effective remote login system so that
our IT staff can check a client’s system remotely.
Security
TSI/OS lacks any sense of security, which has caused a few major problems for us. As
stated in the introduction of this report we’ve face a number of major security issues both
internally and externally. Since the development of Windows VISTA and the Security
Development Lifecycle, Microsoft took the lead in making sure that it’s able to try to address its
own security concerns (Dunn, 2014). Part of the luck in our security is that most of our clients
do not have the TSI/OS connected to any outside networks so few people have had interest in
developing virus or worms to effect the TSI/OS. This has recently changed though a worm was
found in our web server, though it doesn’t seem to have been specifically malicious, that one was
found at all is a concern. Since this could have resulted in a worm being built into any patches of
the TSI/OS that were to be sent out to clients.
Device Drivers
We spend an estimated 30,000 dollars a year to not update our hardware. Yes, to not
update our hardware. Since the TSI/OS is unable to handle multithreading, has limited to no
fault tolerance we’re not able to use any hardware that has been designed since the early 2000’s.
Now over a decade ago. This means that instead of keeping up with our competitors we’re
falling farther and farther behind. Not only is our graphic design department unable to use tools
9. TSI/OS REVIEW 9
like Wacom Tablets but we’re forced to use printers that are becoming harder to get ink for, to
find replacement parts for them when they break. Our computers hardware systems are
becoming rapidly outdated, most of them are unable to handle more than four gigabytes of RAM
(says, 2011). We’re not able to use anything past UBS 1.0, meaning that we’re still required to
use both early slow USB hardware, as well as serial ports (Cunningham, 2014).
Deadlock:
Though this was not requested in the initial review during the process a new issue was
brought to the review teams attention. The web servers were locking without any clear
explanation, in particular during peak server use times causing a loss in sales and loss of
customer who were unable to reach the online helpdesk system. It was discovered that the
TSI/OS was not designed with deadlock avoidance. It is amazing that this hasn’t been an issue
for our clients, it must be implemented in the next version of the TSI/OS
A deadlock is essentially when a set processes freezes because it has come to loggerheads
waiting for an event in the set to launch the rest of the event (Deadlock. n.d.; Tanenbaum & Bos,
2015).With these events hanging, it causing the whole process set to lockup and not respond, for
all practical purposes it is in an infinite logic loop. Operating systems are typically written with
algorithms to avoid this, and often have other features to prevent this from happening in the first
place (Deadlock avoidance. n.d.; Deadlock. n.d.; Tanenbaum & Bos, 2015).
Since TSI’s Web Server needs keeps locking during the pthread_mutex_lock(), it would
seem as if there is some part of that event call that is not being recognized as a safe release of the
resources. Since the TSI web servers are inaccessible by their customers during peak demand
times, one clearly can’t avoid the problem anymore by employing the “ostrich algorithm”
(Tanenbaum & Bos, 2015 p. 443).
10. TSI/OS REVIEW 10
Avoiding the Deadlock
The most reasonable way to avoid this constant deadlocking will be to implement the
Baker Algorithm, to allow the OS to examine the requests from each process set, allowing it to
determine if they resources can be allotted to the process set or not. Instead of having to reset the
web server each time the OS will be able to free resources as needed, but also be able to
determine that the call is safe in the first place. Where Deadlock avoidance is important, it may
be needed to also address the circular wait that is happening in the pthread_mutex_lock()
(Tanenbaum & Bos, 2015). I feel that the best way to address this will be to change the code
type of the MUTEX to be PTHREAD_MUTEX_RECURSIVE, and then the unlock call should
free up the resources once the resources are freed (Pthread_mutexattr_settype. n.d.;
Pthread_mutex_lock. n.d.).
Summary of Business Challenges
The outdated aspects of TSI OS have started to present many challenges for TSI. Our
lack of security for the OS itself is the first major concern, even though this hasn’t presented
much of an issue for our clients, it presents a major risk for us, and by extension our clients since
there is nothing to prevent hackers, or even anyone who gains illicit access to our offices from
accessing our files. A recent example of this, is a version of the TSI/OS that was nearly to a
drone client that contained a logic bomb, which would have caused a massive failure in drones
that entered specific GPS coordinates (Northcutt, n.d.). The employee that was responsible for
this was fired, and also has been brought up on criminal charges. However, the fact that the
employee was not a part of project just highlights the lack of security the TSI/OS has.
11. TSI/OS REVIEW 11
Next is that we have not kept up with the modern changes hardware, even though this
hasn’t presented too much of an issue for our clients, our own use of TSI/OS on our backend has
become frustrating and simply unsatisfactory. Our need for outdated hardware means that we’re
limited in what other software that we’re able to use in the office, the speed at which our systems
can operate, as well as the fact that we’re limited in the internet connection speed that we can
utilize; this also interrelates to the lack of multithreading which requires us to use open source
programs that then allow us to remove the multithreading support, but this means that we’re not
able to use some of the other features of mainline software. Our graphic design department is
extremely effect by this, since they’re unable to use any of the standard programs from either
Adobe or Corel. Nor can our sales department have a spreadsheet, web browser, email client and
contact information open at once, which has started to effect the speed and efficiency of our sales
teams, because our clients are expecting faster service.
The inability for the TSI/OS to handle device drives has limited use to the forms of hardware and
peripheries that we’re able to use (Tanenbaum & Bos, 2015). Similar to our need to run legacy
processors and other internal components, we’re quickly become outpaced by keyboards,
printers, and mice. Instead of being able to purchase new printers, etc. when our older devices
break, we are forced to spend more money to repair devices that are now outside their normal
expected lifetime. Also whenever a client wants to add and new device to their already shipped
TSI/OS we need to contact the vendor, request a Unix based drive and then modify it to run on
the TSI/OS. We are quickly losing ground to other operating systems, because of the amount of
time this takes to provide our clients, when they can use a more common modern operating
system that most peripheries are able to just plug and play with.
12. TSI/OS REVIEW 12
It has come to the point that we need to accept that the TSI/OS no longer functions for our
backend needs, and that the cost of the legacy hardware that we need to run our company has
started to eat too much into our profit margin (Deloitte, 2013; Pratt, n.d.), not only are our profits
starting to fall because of our legacy issues, but our sales are starting to flag, because even our
clients are starting to notice the need to have a more modern operating system to run their
systems with.
Consumer Challenges
To summarize the ways in which the TSI/OS falls short we examined what a current graduate
student would face if they were trying to use the TSI/OS as their operating system but extracting
only two of the missing features.
Multiprogramming:
A modern graduate student along with modern operating systems need to be able to multitask.
The idea that a student isn’t able to have the web and a word processor open at the same time.
Even though most graduate students will have done the majority of their research before they
start writing the full length of their paper, they may need to double check a citation, to review
information that they were just made aware of by a professor or teacher’s assistant.
Multithreading:
The primary reason that a graduate student would look for open-source software is that
they’re often free, not because their computer is unable to handle multithreading. Most graduate
13. TSI/OS REVIEW 13
students will not have the technical knowledge on how to strip out multithreading from their
open-source software, and they’re more like to buy new and currently technology, not systems
that are over 16 years old to just run an operating system (Rouse, n.d.).
Recommendation
We have to accept that TSI/OS is no longer functional for our backend needs. And unless
we’re willing to spend about three years and an estimated 700,000 to address just the basic
changes that need to happen to TSI/OS to make it work for our needs. We will be better off
using one of the modern operating systems that is already out there, such as Ubuntu, Windows
10, or OSX. The current recommendation is that TSI switches to Windows 10.
Architecture
Hardware
Windows 10 will require a minimum of 2 GB of RAM, 1.0 Ghz processor, a Direct X 9.0
capable video card and, a monitor that is capable of doing a resolution of 800x600 pixels
(Windows 10 specifications. n.d.).
Support and functionality
Windows 10 ships with number of drivers, and is designed to use a plug and play aspect
that will allow for easy implantation of I/O devices. It will search the internet as well if the
device driver is not present (How device drivers work. 2003). Windows 10 is able to handle two
physical processors with the possibility of up to 256 cores if using the 64-Bit system (Da Costa,
2015)
14. TSI/OS REVIEW 14
Processes Management
Windows 10 utilizes both its Task Manager and Resource Monitor to allow users (or
super-users depending on the level of security established) to review what processes are running.
The resource monitor allows for even deeper exploration showing the number of threads, and if a
processes is suspended or not; as opposed to not responding (Phelps, 2011). Windows uses a
scheduled processing which uses six different levels of priority to help organize the running of
processes, allowing for quicker real time handling of user needs (Scheduling priorities. n.d.).
Deadlock
Windows 10 allows admin level users to use command line to search for any possible
deadlocks that potentially are occurring to do driver issues (Deadlock detection. n.d.). Although
Windows doesn’t permit for a forced ending of a deadlock a user can used the driver verification
in command line to find which driver is causing the issue and then upgrade the driver, or
downgrade if an upgrade seems to be the cause (Deadlock detection. n.d.).
Memory Management
Windows 10 allows for a GUI interface that will let a user adjust the amount of virtual
memory (VM) that a system uses. However, unless we are using the bare minimum for running
Windows 10, it’s unlikely that we would need to use this feature. Also if need be it is possible to
change the amount of VM that is being used through the command line structure, but it’s not
possible to see the VM allotment in command line.
I/O and Mass Storage
Windows 10 uses a device driver system to handle I/O data flow. It is designed to use a
protected user-space that then interacts with the I/O manager to then carry out the requests from
the end-user and the associated applications (Overview of windows I/O model. n.d.) This
15. TSI/OS REVIEW 15
protected user-space is designed to prevent accidental interference from the user and to lessen the
likelihood of a deadlock (Overview of windows I/O model. n.d.). Windows drivers system since
they work with a number of electronic manufactures allows them to develop and release drivers
that allow for essentially quick instillation of drivers for any mass storage media that we choose
that allow for quick instillation of mass media storage devices.
Security
Windows 10 uses a number of security features, including but not limited to out of the
box BitLocker encryption (A beginner's guide to BitLocker. 2016; challum, 2016; Grimes, 2016),
multiple users with different logins and different levels of access per users (challum, 2016). We
will be able to use secondary authentication, as well as biometric identification features. Where
this might not be needed on all of our workstations it will be a useful feature on workstations and
servers that need a higher level of clearance to access. This will make sure that only a limited
number of people have access to that information and workstations, cutting down on the risk of
data theft and damage from disgruntled workers and from outside forces.
Conclusion
Windows 10 will meet all the needs that we have as a company. Instead of being
constrained by the limitations of the TSI/OS we’ll be able to compete with our competitors in the
market. Each of our departments will be able to use multiple programs, meaning less of a
backlog in work, bringing us out of the 1990s and into the mid twenty-first century. We will
have fault tolerance to protect both our hardware and data from potential damage and loss. What
switching to Windows 10 will also give us a working operating system that will protect our profit
16. TSI/OS REVIEW 16
margins as well as our clients as we work on turning the TSI/OS in to a fully functional modern
operating system that will open new markets for TSI.
Tables
GPOS Feature Profile Criteria Analysis
Multiprogramming
Tech Description
Allows the CPU to run multiple programs in a nearly parallel
manner, so that there is little ideal time for the CPU
(Multitasking. n.d.; Tanenbaum & Bos, 2015).
Business Requirement
Without multiprogramming workers are restricted to running
one program at a time, which can interfere with productivity,
since a they need to close any open program to check an
email, to review a different piece of material that requires a
different program to view.
Multiprocessing
Tech Description
Multiprocessing allows for a multi-core, multi-process
processor to run various processes at a same time, this allows
for programs to execute different functions at nearly the same
time, it also allows for background processes (programs that
run silently) to continue without interfering with the overall
function of the system, such as checks for software patches,
OS updates etc. (Tanenbaum & Bos, 2015)
Business Requirement
Without multiprocessing a user will need to wait for each
program to finish whatever it’s doing before they execute a
command in another program. An example would be a user
saving a file in a word-processor, would not be able to launch
their email client at the same time.
Multithreading
Tech Description Multithreading similar to multiprocessing allows for a single
program to run smaller units of process at the same time, an
example of this is “real-time” spellcheck in many modern
word-processors. If it was not for multithreading word-
processor would have to wait until the ending of the I/O input
from the keyboard before it was able to check spelling (What
is multithreading? n.d.; Frank & i_am_jorf, 2009)
Business Requirement
Multithreading is a common aspect of most modern programs,
so that they can do smaller processes as they run, it is nearly
impractical to expect to find software that doesn’t use
multithreading since it is a technology that is over a decade
old now, (Rouse, n.d.)
17. TSI/OS REVIEW 17
Virtual Memory
Tech Description Even though the amount of RAM that a computer has access
to has increased, so has the amount of RAM programs take.
However, virtual memory (VM) allow an operating system to
use portions of the hard disk to function as memory for
execution of programs (Lin, n.d. ; Tyson, 2000)
Business Requirement Though the need for virtual memory can be reduced by
having more RAM then is needed, and in general many home
users no longer need virtual memory, it can still be needed for
enterprise level of use (Linux system administrator guide:
Chapter 6. memory management.; Tanenbaum & Bos, 2015)
System Call
Interface
Tech Description System calls allow for programmers to understand and view
how their programs will interact with the operating system
(Tanenbaum & Bos, 2015).
Business Requirement This will allow programmers to develop software with greater
ease.
Security
Tech Description Individual user logins, system logs to track activity,
cryptography (What is operating system security (OS
security)?; Tanenbaum & Bos, 2015)
Business Requirement Lack of security allows for disgruntled users (or anyone who
can access a workstation) to disrupt business with little to
know knowledge of who did the damage (Hadnagy, 2010;
Tanenbaum & Bos, 2015)
Device Drivers
Tech Description Device drivers are small portions of software that tell a
computer and operating system how to interact with various
devices from SATA drives, to modern USB keyboards
(Tanenbaum & Bos, 2015).
Business Requirement This allows for businesses to keep up with modern hardware
and peripherals.
Fault Tolerance
Tech Description Fault tolerance allows for the OS to respond to both hardware
and software failure, in the case of hardware failure it often
will switch to a backup device, allowing for time to shut
down the machine to happen to protect critical data and
components. Software fault tolerance allows for software to
be terminated without causing the operating system to fail,
and hopefully, allow other programs to continue to run (High
availability vs. fault tolerance.; What is fault tolerance?)
Business Requirement Without any form of fault tolerance criterial data can be lost
because of poor coding on a website (software), or due to the
computer not shutting down when a fan breaks causing the
CPU and hard drive to overheat (hardware)
Table 1: Technical and Business Requirement Breakdown.
18. TSI/OS REVIEW 18
GPOS
Feature
Profile Criteria
Analysis
Multiprogramming
Tech Description
Allows the CPU to run multiple programs in a
nearly parallel manner, so that there is little ideal
time for the CPU (Multitasking.; Tanenbaum &
Bos, 2015).
Business Requirement
Without multiprogramming workers are
restricted to running one program at a time,
which can interfere with productivity, since a
they need to close any open program to check an
email, to review a different piece of material that
requires a different program to view.
Application Benefit
This will allow our staff to run multiple
programs at the same time, this will ease the
time constraints on many departments. Most
notably the customer services department will be
able to use the help desk, email, and spreadsheet
systems at once.
Implementation Tasks
We will be able to better utilize the overall speed
of our systems’ processors (Tanenbaum & Bos,
2015).
Multiprocessing
Tech Description
Multiprocessing allows for a multi-core, multi-
process processor to run various processes at a
same time, this allows for programs to execute
different functions at nearly the same time, it
also allows for background processes (programs
that run silently) to continue without interfering
with the overall function of the system, such as
checks for software patches, OS updates etc.
(Tanenbaum & Bos, 2015).
Business Requirement
Without multiprocessing a user will need to wait
for each program to finish whatever it’s doing
before they execute a command in another
program. An example would be a user saving a
file in a word-processor, would not be able to
launch their email client at the same time.
Application Benefit
Our staff will be able to use features that
commonly used now days by various programs.
So that we will no longer have to wait for a
single program to finish its use of the processor
before utilizing the features of another.
19. TSI/OS REVIEW 19
Implementation Tasks
We will be able to use motherboards and
processors newer then 2006, meaning that we
will no longer need to use legacy hardware for
our personal systems.
Multithreading
Tech Description Multithreading similar to multiprocessing allows
for a single program to run smaller units of
process at the same time, an example of this is
“real-time” spellcheck in many modern word-
processors. If it was not for multithreading
word-processor would have to wait until the
ending of the I/O input from the keyboard before
it was able to check spelling (What is
multithreading? n.d.; Frank & i_am_jorf, 2009).
Business Requirement Multithreading is a common aspect of most
modern programs, so that they can do smaller
processes as they run, it is nearly impractical to
expect to find software that doesn’t use
multithreading since it is a technology that is
over a decade old now, (Rouse, n.d.).
Application Benefit Similar to the use of multithreading, our staff
will be able to use features that commonly used
now days by various programs. This includes
the simultaneous execution of “live” spell
checking, use of mice for our GUI instead of key
commands.
Implementation Tasks We will be able to use real time features, as well
as modern internet browsers that utilize tabs and
windows as opposed to needing to only use one
window.
Virtual Memory
Tech Description Even though the amount of RAM that a
computer has access to has increased, so has the
amount of RAM programs take. However,
virtual memory (VM) allow an operating system
to use portions of the hard disk to function as
memory for execution of programs (Lin, n.d. ;
Tyson, 2000).
Business Requirement Though the need for virtual memory can be
reduced by having more RAM then is needed,
and in general many home users no longer need
virtual memory, it can still be needed for
enterprise level of use (Linux system
administrator guide: Chapter 6. memory
management.; Tanenbaum & Bos, 2015).
20. TSI/OS REVIEW 20
Application Benefit Virtual Memory will allow us to utilize user-
stations that rely less on RAM by permitting the
use of hard drive to supplement the lower
amount of RAM.
Implementation Tasks VM shall allow us to better use the TSI OS with
RAID systems to create a higher level of
functionality and stability for our server features.
System Call
Interface
Tech Description System calls allow for programmers to
understand and view how their programs will
interact with the operating system (Tanenbaum
& Bos, 2015).
Business Requirement This will allow programmers to develop
software with greater ease.
Application Benefit Our programmers, as well as outside contractors
to develop software for our OS. We can
potentially also become less dependent on open
source software.
Implementation Tasks
Security
Tech Description Individual user logins, system logs to track
activity, cryptography (What is operating system
security (OS security)?; Tanenbaum & Bos,
2015).
Business Requirement Lack of security allows for disgruntled users (or
anyone who can access a workstation) to disrupt
business with little to know knowledge of who
did the damage (Hadnagy, 2010; Tanenbaum &
Bos, 2015).
Application Benefit We will have greater security for our sensitive
data, and it will be easier for loss prevention to
track potential threats to our intellectual
property.
Implementation Tasks We will develop a system encryption based off
of Pretty Good Privacy standards (Rouse, n.d. 1).
Device Drivers
Tech Description Device drivers are small portions of software
that tell a computer and operating system how to
interact with various devices from SATA drives,
to modern USB keyboards (Tanenbaum & Bos,
2015).
Business Requirement This allows for businesses to keep up with
modern hardware and peripherals.
21. TSI/OS REVIEW 21
Application Benefit We will be able to use hardware and peripherals
that are less than a decade old.
Implementation Tasks We will be able to contact peripheral
manufactures to acquire the needed information
to develop new drives specifically for the TSI
OS, which will help us to expand our market
shares.
Fault Tolerance
Tech Description Fault tolerance allows for the OS to respond to
both hardware and software failure, in the case
of hardware failure it often will switch to a
backup device, allowing for time to shut down
the machine to happen to protect critical data and
components. Software fault tolerance allows for
software to be terminated without causing the
operating system to fail, and hopefully, allow
other programs to continue to run (High
availability vs. fault tolerance.; What is fault
tolerance?).
Business Requirement Without any form of fault tolerance criterial data
can be lost because of poor coding on a website
(software), or due to the computer not shutting
down when a fan breaks causing the CPU and
hard drive to overheat (hardware).
Application Benefit We will be able to help protect our users from
loss of data and the possibility of damage to
hardware.
Implementation Tasks Once our drivers and VM system is developed
we will be able to execute RAID-10 systems to
help protect our system data and increase our
larger servers’ speeds (RAID 10, n.d.).
22. TSI/OS REVIEW 22
Recommendation
As you know the use of the current TSI OS in the back office has become hazardous to our bottom
line. The recent near lawsuit with our security breach, the constant need for purchasing outmoded
technology and the lack of fault tolerance has also resulted in the loss of valuable data. The
current state of the OS also results in wasted user time and decreased customer satisfactions when
they call us for support. It is recommended that for the time being that we move to using
Windows 10 as our backend system do to the finical and time constraints that would be present in
upgrading the TSI/OS. This will allow us to have a functional operating system as we work to
upgrade the TSI/OS to a modern operating system that will then also open additional markets for
us.
Table 2: GPOS features.
23. TSI/OS REVIEW 23
References
A beginner's guide to BitLocker, windows' built-in encryption tool. (2016). Retrieved from
http://www.pcworld.com.ezproxy.snhu.edu/article/2308725/encryption/a-beginners-
guide-to-bitlocker-windows-built-in-encryption-tool.html
challum. (2016). Windows 10 security overview. Retrieved from https://technet-microsoft-
com.ezproxy.snhu.edu/en-us/itpro/windows/keep-secure/windows-10-security-
guide#information
CoderHawk, & BlackICE. (2011). SQL server - what are the main causes of deadlocks and can
they be prevented? - database administrators stack exchange. Retrieved from ht
tp://dba.stackexchange.com/questions/126/what-are-the-main-causes-of-deadlocks-and-c
an-they-be-prevented
Da Costa, A. (July 8, 2015). Windows 10 versions CPU limits. Retrieved from https://answers-
microsoft-com.ezproxy.snhu.edu/en-us/windows/forum/windows_10/windows-10-
versions-cpu-limits/905c24ad-ad54-4122-b730-b9e7519c823f
Deadlock. (n.d.) Retrieved from http://whatis.techtarget.com/definition/deadlock
Deadlock avoidance. (n.d.) Retrieved from
http://www.personal.kent.edu/~rmuhamma/OpSystems/Myos/deadlockAvoidance.htm
Deadlock detection. Retrieved from https://msdn.microsoft.com/en-
us/library/windows/hardware/ff543668(v=vs.85).aspx
Frank, & i_am_jorf. (8/21/2009). What is a multithreaded application? Retrieved from
http://stackoverflow.com/questions/1313062/what-is-a-multithreaded-application
24. TSI/OS REVIEW 24
Grimes, R. A. (2016). The best new security features of windows 10. Retrieved from
http://www.infoworld.com.ezproxy.snhu.edu/article/3044089/security/the-best-new-
security-features-of-windows-10.html
Hadnagy, C. (2010). Social engineering. Indianapolis, Wiley.
High availability vs. fault tolerance. (n.d.) Retrieved from
https://www.ibm.com/support/knowledgecenter/SSPHQG_6.1.0/com.ibm.hacmp.concept
s/ha_concepts_fault.htm
How device drivers work. (2003). Retrieved from https://technet-microsoft-
com.ezproxy.snhu.edu/en-us/library/cc776371(v=ws.10).aspx
Lin, C. C. Virtual memory. (n.d). Retrieved from
https://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Memory/virtual.html
Linux system administrator guide: Chapter 6. memory management. (n.d.) Retrieved from
http://www.tldp.org/LDP/sag/html/vm-intro.html
Multitasking. (n.d.) Retrieved from https://www-britannica-
com.ezproxy.snhu.edu/technology/multitasking
Overview of windows I/O model (windows drivers). (n.d.) Retrieved from
https://msdn.microsoft.com/en-us/library/windows/hardware/ff558762(v=vs.85).aspx
Phelps, J. (2011). How to use task manager. (n.d.) Retrieved from
http://www.pcworld.com.ezproxy.snhu.edu/article/241693/how_to_use_task_manager.ht
mlPthread_mutex_lock. (n.d.) Retrieved from
http://pubs.opengroup.org/onlinepubs/7908799/xsh/pthread_mutex_lock.html
Pthread_mutexattr_settype. (n.d.) Retrieved from
http://pubs.opengroup.org/onlinepubs/007908775/xsh/pthread_mutexattr_settype.html
25. TSI/OS REVIEW 25
Purdy, M. (2001). The making of a suspect: The case of wen ho lee. Retrieved from
http://www.nytimes.com/2001/02/04/us/the-making-of-a-suspect-the-case-of-wen-ho-
lee.html
Raid 10. (n.d.) Retrieved from
http://www.raidrecoverysolutions.com/index.php?option=com_content&view=article&id
=29&Itemid=26
Rouse, M. What is Pentium 4 (P4)? (n.d.) Retrieved from
http://searchmobilecomputing.techtarget.com/definition/Pentium-4
Tanenbaum, A. S., & Bos, H. (2015). Modern operating systems (4. ed.). Boston, Pearson.
Tyson, J. (2000). How virtual memory works. Retrieved from
http://computer.howstuffworks.com/virtual-memory.htm
What is fault tolerance? (n.d). Retrieved from https://www.techopedia.com/definition/3362/fault-
tolerance
What is multithreading? (n.d.) Retrieved from
https://www.techopedia.com/definition/24297/multithreading-computer-architecture
What is operating system security (OS security)? (n.d). Retrieved from
https://www.techopedia.com/definition/24774/operating-system-security-os-security
Windows 10 specifications & system requirements. (n.d.) Retrieved from
http://www.microsoft.com/en-us/windows/windows-10-specifications