¶ … Multithreading
Single and Multithreading
The focus of this report will be to attempt to delve into that void called the operating system and to expose the unique concepts of threading and multithreading. The demand for faster and more powerful computers continues to grow as does the demand for better and faster operating systems. The concept of hyperthreading is the next generation of the idea and will also be touched upon.
Both business and personal computing have become an everyday part of the life for millions of individuals the world over. The majority of individuals who use computers, however, do not actually know what is going on in the background. Operating systems, for example, have always worked on the old notion that one only has to know how to drive the car but not necessarily how the car works. In other words, operating systems do get the work done but the average computer user has no idea what the operating system did to get the work done.
The operating system of a computer is the software that tells the hardware what to do. When a computer user clicks on the mouse button he is really communicating with the operating system as opposed to the mouse. The operating system of a computer is really what makes things happen by determining which tasks or parcels of work will be accomplished and in what order. A very large part of an operating system' tasks are accomplished through the concepts of threading and multithreading. Although the names may sound similar, the ideas of threading and multithreading are wholly quite different but it is better to know how and why they both work.
If someone wants to grasp the concepts of threading and multithreading, it is to the person's advantage to have an understanding of how a computer works and more precisely, how the Central Processing Unit (CPU) works. With that being said, the ideas of threading and multithreading will be clear soon.
Introduction
In today's computer literate society, Microsoft's Windows program comes to mind in the majority of novices when discussing a computer's operating system. But when discussing the concepts of threading and multithreading, fewer ideas pop into the heads of those novice computer users. Back in July of 1997, when Macintosh was releasing it's latest version of its Apple operating system, OS 8, some hyped Apple users read this in the Washington Times. "More important for users, OS 8 has at its core a multithreaded Finder, which allows you to multitask more easily. You can copy a file - or a disk full of files - in the background while working on other tasks. That is what multithreading allows you to do, and that's what you'll find in OS 8." (Kellner)
To begin the journey into threading, one must have a grasp of what an operating system is and what its functions are. An operating system is technically software that controls the operations of a computer and literally directs the processing of programs by assigning storage space in the memory of the central processing unit and also controlling the input and output functions. The key term here is 'assigning storage space.' Threading and multithreading are concepts that are an important part of how an operating system assigns storage space.
Many people are tricked into thinking that because of the naming convention, the concept of multithreading is a derivative of threading or simply 'threading doubled.' The two concepts are somewhat different and this report will attempt to explain those concepts and differences in easy to follow terms. A brief history of threading, multithreading and the respective backgrounds shall be covered followed with more detail of where and when to use each idea. Next, a general overview of how each of the concepts works will be discussed and then will provide specific details of the ideas with some comparison notes between the two. The report will close out with some detailed performance metrics related to multithreading and insight into the future of the concepts, specifically superthreading and hyperthreading.
History
Early on in computing, programming was all geared around the single threading concept. Programs were entered or introduced to the CPU through punch cards, tape, or keyboard and the single task operations of the mainframe or early PC's occurred. The concept of time sharing came along as more businesses saw the potential of computing and the idea of sharing the CPU efficiently and fairly became more important. The concept of multiple threads of execution...
Mx1, 1x1 and MxN, each having its own advantages and disadvantages. Although Mx1 is commonly acknowledge as an inferior model, there's plenty of debate about the merits of 1x1 versus MxN. Lately, the trend has been for several operating systems such as Solaris and Linux to move from a MxN model to the 1x1 model. This paper compares the pros and cons of each thread model and explores reasons
resource ownership, namely a process that includes a virtual address space to hold the process image. The process is the key to the system. Each process is constantly in one of three stages: Ready, Running, or Blocked. The operating system keeps track of its state and manages its movement amongst the various states. It is in charge of operating, managing, and terminating the various processes as well as seeing
This will not only create a higher level of trust in the actual implementation, it will also set the foundation for more effective ongoing support for these users if they have any problems with the systems once they are installed. An effective change management strategy is as important, if not more important, than the technology upgrade and implementation plan itself (Gil, Tether, 2011). In implementing any it Project the concept
The Windows operating system architecture also allows for single sign-on and also relies on user name and password verification. The authentication process for a Windows operating system at the server level can also be configured to validate the identity of the person logging in at the Windows domain and Microsoft Active Directory Service levels as well. Certificates can be assigned to specific applications, databases and processes within a Windows sever-based
The real-time integration to memory management that would lead to rapid advanced in superscalar memory management made possible with RISC-based microprocessors and memory however continued to be driven by IBM and their partners working in conjunction with each other on new developments (Biswas, Carley, Simpson, Middha, Barua, 2006). Implications of RISC Development on Memory Management Advances Over the first twenty five years of RISC processor and memory development the key lessons
Linux Kernel Analysis Much has been written in praise of the Linux (Crandall, Wu, Chong, 359), (Parnas, 112), (Baliga, Iftode, Chen, 323), and its use of preemptive multitasking memory architectures to manage process control, file management, device management, information maintenance and communications subsystems securely and effectively. The Linux modular design, lack of reliance on Remote Procedure Calls (RPC), and use of UNIX-based system administration all are often cited as factors in how
Our semester plans gives you unlimited, unrestricted access to our entire library of resources —writing tools, guides, example essays, tutorials, class notes, and more.
Get Started Now