Search Constraints
Number of results to display per page
Results for:
Keywords
Operating systems (Computers)
Remove constraint Keywords: Operating systems (Computers)
Language
English
Remove constraint Language: English
1 - 4 of 4
Search Results
-
e-book
"If you are looking for a quick study guide in Computer Studies, this book is an excellent resource. Skip the lengthy and distracting books and instead use this book to guide your studies, review your knowledge, or help with tutoring. This book quickly gets to the heart of each particular topic, helping students with a quick review before doing homework or preparing for a test."--BCcampus website.
- Subjects:
- Computing, Data Science and Artificial Intelligence
- Keywords:
- Microcomputers Operating systems (Computers) Business -- Computer programs
- Resource Type:
- e-book
-
e-book
In this book, you will learn about all three kinds of interaction. In all three cases, interesting software techniques are needed in order to bring the computations into contact, yet keep them suffciently at arm's length that they don't compromise each other's reliability. The exciting challenge, then, is supporting controlled interaction. This includes support for computations that share a single computer and interact with one another, as your email and word processing programs do. It also includes support for data storage and network communication. This book describes how all these kinds of support are provided both by operating systems and by additional software layered on top of operating systems, which is known as middleware. Chapter 1 provides an overview of the text as a whole, explaining what an operating system is, what middleware is, and what sorts of support these systems provide for controlled interaction. The next nine chapters work through the varieties of controlled interac- tion that are exemplified by the scenario at the beginning of the preface: in- teraction between concurrent computations on the same system (as between your email program and your word processor), interaction across time (as between your word processor before your trip and your word processor after your trip), and interaction across space (as between your email program and your service provider's email server). The first of these three topics is controlled interaction between computa- tions operating at one time on a particular computer. Before such interaction can make sense, you need to understand how it is that a single computer can be running more than one program, such as an email program in one window and a word processing program in another. Therefore, Chapter 2 explains the fundamental mechanism for dividing a computer's attention between concurrent computations, known as threads. Chapter 3 continues with the related topic of scheduling. That is, if the computer is dividing its time between computations, it needs to decide which ones to work on at any moment. With concurrent computations explained, Chapter 4 introduces con- trolled interactions between them by explaining synchronization, which is control over the threads' relative timing. For example, this chapter explains how, when your email program sends a document to your word processor, the word processor can be constrained to read the document only after the email program writes it. One particularly important form of synchroniza- tion, atomic transactions, is the topic of Chapter 5. Atomic transactions are groups of operations that take place as an indivisible unit; they are most commonly supported by middleware, though they are also playing an increasing role in operating systems. Other than synchronization, the main way that operating systems con- trol the interaction between computations is by controlling their access to memory. Chapter 6 explains how this is achieved using the technique known as virtual memory. That chapter also explains the many other objectives this same technique can serve. Virtual memory serves as the foundation for Chapter 7's topic, which is processes. A process is the fundamental unit of computation for protected access, just as a thread is the fundamental unit of computation for concurrency. A process is a group of threads that share a protection environment; in particular, they share the same access to virtual memory. The next three chapters move outside the limitations of a single com- puter operating in a single session. First, consider the document stored before a trip and available again after it. Chapter 8 explains persistent storage mechanisms, focusing particularly on the file storage that operat- ing systems provide. Second, consider the interaction between your email program and your service provider's email server. Chapter 9 provides an overview of networking, including the services that operating systems make available to programs such as the email client and server. Chapter 10 ex- tends this discussion into the more sophisticated forms of support provided by communication middleware, such as messaging systems, RMI, and web services. Finally, Chapter 11 focuses on security. Because security is a pervasive issue, the preceding ten chapters all provide some information on it as well. Specifically, the final section of each chapter points out ways in which se- curity relates to that chapter's particular topic. However, even with that coverage distributed throughout the book, a chapter specifically on security is needed, primarily to elevate it out of technical particulars and talk about general principles and the human and organizational context surrounding the computer technology. The best way to use these chapters is in consecutive order. However, Chapter 5 can be omitted with only minor harm to Chapters 8 and 10, and Chapter 9 can be omitted if students are already suffciently familiar with networking.
- Subjects:
- Computing, Data Science and Artificial Intelligence
- Keywords:
- Operating systems (Computers) Computer software -- Development Middleware Textbooks
- Resource Type:
- e-book
-
e-book
The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readers-writers," "Producer-consumer", and "Dining Philosophers." In addition, it collects a number of not-so-classical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.
- Subjects:
- Computing, Data Science and Artificial Intelligence
- Keywords:
- Computer programming Textbooks Operating systems (Computers)
- Resource Type:
- e-book
-
Others
This Linux tutorial is divided into 13 sections. In general I recommend you work through them in order but if you've come here just to learn about a specific topic then feel free to just go straight to that one. You can now jump into section 1 and get started or keep reading below to learn a little more about this tutorial. 1.The Command Line - What is it, how does it work and how do I get to one. 2.Basic Navigation - An introduction to the Linux directory system and how to get around it. 3.More About Files - Find out some interesting characteristics of files and directories in a Linux environment. 4.Manual Pages - Learn how to make the most of the Linux commands you are learning. 5.File Manipulation - How to make, remove, rename, copy and move files and directories. 6.Vi Text Editor - Discover a powerful Linux based text editor. 7.Wildcards - Also referred to as globbing, this is a means to refer to several files in one go. 8.Permissions - Learn to identify and change the permissions of files and directories and what the consequences of these are. 9.Filters - An introduction to various commands that allow us to mangle data in interesting and useful ways. 10.Grep and Regular Expressions - Master a powerful pattern matching language that is useful for analysing and processing data. 11.Piping and Redirection - Join commands together in powerful combinations. 12.Process Management - See what is currently running on your Linux system and what state the system is in, learn how to kill programs that have hung and put jobs in the background. 13.Scripting - Be happy. Get the computer to do tedious and repetitive tasks for you. 14.Cheat Sheet - A quick reference for the main points covered in this tutorial.
- Subjects:
- Computing, Data Science and Artificial Intelligence
- Keywords:
- Linux Operating systems (Computers)
- Resource Type:
- Others