SlideShare a Scribd company logo
1 of 25
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
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
TSI/OS REVIEW 3
Top Secret Incorporated (TSI) Operating Systems
a Review and Recommendations
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
TSI/OS REVIEW 5
Conclusion ........................................................................................................................ 15
Tables ................................................................................................................................ 16
Table 1............................................................................................................................... 17
Table 2............................................................................................................................... 22
References......................................................................................................................... 23
TSI/OS REVIEW 6
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
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
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).
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.
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.
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
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)
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
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
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.)
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.
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.
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).
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.
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.).
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.
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
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
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

More Related Content

Similar to IT600_FinalProject_ErikWHouse

IT 600 Final Project Milestone Two Template Analytical Organiza.docx
IT 600 Final Project Milestone Two Template Analytical Organiza.docxIT 600 Final Project Milestone Two Template Analytical Organiza.docx
IT 600 Final Project Milestone Two Template Analytical Organiza.docxchristiandean12115
 
ca_nimsoft_monitor_snap_ebook
ca_nimsoft_monitor_snap_ebookca_nimsoft_monitor_snap_ebook
ca_nimsoft_monitor_snap_ebookTiffany Hamilton
 
What to Expect When You're Expecting (to Own Production)
What to Expect When You're Expecting (to Own Production)What to Expect When You're Expecting (to Own Production)
What to Expect When You're Expecting (to Own Production)Michael Diamant
 
Karen Forster Top 10 IT Costs
Karen Forster Top 10 IT CostsKaren Forster Top 10 IT Costs
Karen Forster Top 10 IT Costspvjeff
 
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docx
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docxDisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docx
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docxsalmonpybus
 
Citihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark EllisCitihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark Ellismarkellis
 
Netreo whitepaper 5 ways to avoid it management becoming shelfware
Netreo whitepaper   5 ways to avoid it management becoming shelfwareNetreo whitepaper   5 ways to avoid it management becoming shelfware
Netreo whitepaper 5 ways to avoid it management becoming shelfwarePeter Reynolds
 
Automated Operations: Five Benefits for Your Organization
Automated Operations: Five Benefits for Your OrganizationAutomated Operations: Five Benefits for Your Organization
Automated Operations: Five Benefits for Your OrganizationHelpSystems
 
What Are IT Environments, and Which Ones Do You Need?
What Are IT Environments, and Which Ones Do You Need?What Are IT Environments, and Which Ones Do You Need?
What Are IT Environments, and Which Ones Do You Need?Enov8
 
Evolution of #cloud computing
Evolution of #cloud computingEvolution of #cloud computing
Evolution of #cloud computingCirro
 
Which generation of siem?
Which generation of siem?Which generation of siem?
Which generation of siem?Ertugrul Akbas
 
Biggest info security mistakes security innovation inc.
Biggest info security mistakes security innovation inc.Biggest info security mistakes security innovation inc.
Biggest info security mistakes security innovation inc.uNIX Jim
 
Business Continuity and Disaster Recovery for the Modern Office
Business Continuity and Disaster Recovery for the Modern Office Business Continuity and Disaster Recovery for the Modern Office
Business Continuity and Disaster Recovery for the Modern Office Dawn Simpson
 
Keynote Tech Talks: Watching SaaS Apps with Keynote
Keynote Tech Talks: Watching SaaS Apps with KeynoteKeynote Tech Talks: Watching SaaS Apps with Keynote
Keynote Tech Talks: Watching SaaS Apps with KeynoteKeynote Mobile Testing
 
Discussion 1 post responses.Please respond to the following.docx
Discussion 1 post responses.Please respond to the following.docxDiscussion 1 post responses.Please respond to the following.docx
Discussion 1 post responses.Please respond to the following.docxcuddietheresa
 
110006_perils_of_aging_emul_wp
110006_perils_of_aging_emul_wp110006_perils_of_aging_emul_wp
110006_perils_of_aging_emul_wpJessica Hirst
 
Symantec Migration infographic
Symantec Migration infographic Symantec Migration infographic
Symantec Migration infographic BHD Creative Ltd
 

Similar to IT600_FinalProject_ErikWHouse (20)

IT 600 Final Project Milestone Two Template Analytical Organiza.docx
IT 600 Final Project Milestone Two Template Analytical Organiza.docxIT 600 Final Project Milestone Two Template Analytical Organiza.docx
IT 600 Final Project Milestone Two Template Analytical Organiza.docx
 
ca_nimsoft_monitor_snap_ebook
ca_nimsoft_monitor_snap_ebookca_nimsoft_monitor_snap_ebook
ca_nimsoft_monitor_snap_ebook
 
What to Expect When You're Expecting (to Own Production)
What to Expect When You're Expecting (to Own Production)What to Expect When You're Expecting (to Own Production)
What to Expect When You're Expecting (to Own Production)
 
Karen Forster Top 10 IT Costs
Karen Forster Top 10 IT CostsKaren Forster Top 10 IT Costs
Karen Forster Top 10 IT Costs
 
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docx
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docxDisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docx
DisasterRecoveryPlanReport.docxby Varun ShahSubmissi.docx
 
Acc 340 Preview Full Course
Acc 340 Preview Full CourseAcc 340 Preview Full Course
Acc 340 Preview Full Course
 
Acc 340 Preview Full Course
Acc 340 Preview Full Course Acc 340 Preview Full Course
Acc 340 Preview Full Course
 
Citihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark EllisCitihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark Ellis
 
Pano Logic Quick Start 100709
Pano Logic Quick Start 100709Pano Logic Quick Start 100709
Pano Logic Quick Start 100709
 
Netreo whitepaper 5 ways to avoid it management becoming shelfware
Netreo whitepaper   5 ways to avoid it management becoming shelfwareNetreo whitepaper   5 ways to avoid it management becoming shelfware
Netreo whitepaper 5 ways to avoid it management becoming shelfware
 
Automated Operations: Five Benefits for Your Organization
Automated Operations: Five Benefits for Your OrganizationAutomated Operations: Five Benefits for Your Organization
Automated Operations: Five Benefits for Your Organization
 
What Are IT Environments, and Which Ones Do You Need?
What Are IT Environments, and Which Ones Do You Need?What Are IT Environments, and Which Ones Do You Need?
What Are IT Environments, and Which Ones Do You Need?
 
Evolution of #cloud computing
Evolution of #cloud computingEvolution of #cloud computing
Evolution of #cloud computing
 
Which generation of siem?
Which generation of siem?Which generation of siem?
Which generation of siem?
 
Biggest info security mistakes security innovation inc.
Biggest info security mistakes security innovation inc.Biggest info security mistakes security innovation inc.
Biggest info security mistakes security innovation inc.
 
Business Continuity and Disaster Recovery for the Modern Office
Business Continuity and Disaster Recovery for the Modern Office Business Continuity and Disaster Recovery for the Modern Office
Business Continuity and Disaster Recovery for the Modern Office
 
Keynote Tech Talks: Watching SaaS Apps with Keynote
Keynote Tech Talks: Watching SaaS Apps with KeynoteKeynote Tech Talks: Watching SaaS Apps with Keynote
Keynote Tech Talks: Watching SaaS Apps with Keynote
 
Discussion 1 post responses.Please respond to the following.docx
Discussion 1 post responses.Please respond to the following.docxDiscussion 1 post responses.Please respond to the following.docx
Discussion 1 post responses.Please respond to the following.docx
 
110006_perils_of_aging_emul_wp
110006_perils_of_aging_emul_wp110006_perils_of_aging_emul_wp
110006_perils_of_aging_emul_wp
 
Symantec Migration infographic
Symantec Migration infographic Symantec Migration infographic
Symantec Migration infographic
 

IT600_FinalProject_ErikWHouse

  • 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
  • 5. TSI/OS REVIEW 5 Conclusion ........................................................................................................................ 15 Tables ................................................................................................................................ 16 Table 1............................................................................................................................... 17 Table 2............................................................................................................................... 22 References......................................................................................................................... 23
  • 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