Updating search results...

Search Resources

188 Results

View
Selected filters:
  • Computer Science
Open Data Structures
Unrestricted Use
CC BY
Rating
0.0 stars

The goal of this project is to free undergraduate computer science students from having to pay for an introductory data structures book. I have decided to implement this goal by treating this book like an Open Source software project. The LATEX source, Java source, and build scripts for the book are available to download from the author’s website and also, more importantly, on a reliable source code management site.

Subject:
Applied Science
Computer Science
Material Type:
Textbook
Provider:
BCcampus
Provider Set:
BCcampus Open Textbooks
Author:
Pat Morin
Date Added:
10/28/2014
Operating System Engineering, Fall 2012
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This course teaches the fundamentals of engineering operating systems. The following topics are studied in detail: virtual memory, kernel and user mode, system calls, threads, context switches, interrupts, interprocess communication, coordination of concurrent activities, and the interface between software and hardware. Most importantly, the interactions between these concepts are examined. The course is divided into two blocks; the first block introduces one operating system, UNIXĺ¨ v6, in detail. The second block of lectures covers important operating systems concepts invented after UNIXĺ¨ v6, which was introduced in 1976.

Subject:
Applied Science
Computer Science
Life Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Kaashoek, Frans
Date Added:
01/01/2012
Operating Systems
Unrestricted Use
CC BY
Rating
0.0 stars

The course presents an overview of the history and structure of modern operating systems, analyzing in detail each of the major components of an operating system, and exploring more advanced topics in the field, such as security concerns. Upon successful completion of this course, the student will be able to: explain what an operating system does and how it is used; identify the various components of a computer system and how they interact with an operating system; describe the differences between a 32-bit and 64-bit operating system; explain the different types of operating systems and the major ones in use today; discuss the importance and use of threads and processes in an operating system; describe concurrency; explain the difference between a thread and a process; discuss context switching and how it is used in an operating system; describe synchronization; explain a race condition; discuss interprocess communication; describe how semaphores can be used in an operating system; discuss three of the classic synchronization problems; explain the alternatives to semaphores; discuss CPU scheduling and its relevance to operating systems; explain the general goals of CPU scheduling; describe the differences between pre-emptive and non-preemptive scheduling; discuss four CPU scheduling algorithms; explain what deadlock is in relation to operating systems; discuss deadlock prevention, avoidance, and their differences; describe deadlock detection and recovery; explain the memory hierarchy; discuss how the operating system interacts with memory; describe how virtual memory works; discuss three algorithms for dynamic memory allocation; explain methods of memory access; describe paging and page replacement algorithms; describe a file system and its purpose; discuss various file allocation methods; explain disk allocation and associated algorithms; discuss types of security threats; describe the various types of malware; explain basic security techniques; explain basic networking principles; discuss protocols and how they are used; explain reference models, particularly TCP/IP and OSI. (Computer Science 401)

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
The Saylor Foundation
Date Added:
10/24/2019
Operating Systems and Middleware: Supporting Controlled Interaction
Conditional Remix & Share Permitted
CC BY-SA
Rating
0.0 stars

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 sufifciently 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.

Subject:
Applied Science
Computer Science
Material Type:
Textbook
Provider:
Gustavus Adolphus College
Author:
Max Hailperin
Date Added:
05/22/2019
Optimization Methods, Fall 2009
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This course introduces the principal algorithms for linear, network, discrete, nonlinear, dynamic optimization and optimal control. Emphasis is on methodology and the underlying mathematical structures. Topics include the simplex method, network flow methods, branch and bound and cutting plane methods for discrete optimization, optimality conditions for nonlinear optimization, interior point methods for convex optimization, Newton's method, heuristic methods, and dynamic programming and optimal control methods.

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Bertsimas, Dimitris
Date Added:
01/01/2009
Out of Context: A Course on Computer Systems That Adapt To, and Learn From, Context, Fall 2001
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Increasingly, we are realizing that to make computer systems more intelligent and responsive to users, we will have to make them more sensitive to context. Traditional hardware and software design overlooks context because it conceptualizes systems as input-output functions. Systems take input explicitly given to them by a human, act upon that input alone and produce explicit output. But this view is too restrictive. Smart computers, intelligent agent software, and digital devices of the future will also have to operate on data that they observe or gather for themselves. They may have to sense their environment, decide which aspects of a situation are really important, and infer the user's intention from concrete actions. The system's actions may be dependent on time, place, or the history of interaction. In other words, dependent upon context. But what exactly is context? We'll look at perspectives from machine learning, sensors and embedded devices, information visualization, philosophy and psychology. We'll see how each treats the problem of context, and discuss the implications for design of context-sensitive hardware and software. Course requirements will consist of critiques of class readings [about 3 papers/week], and a final project [paper or computer implementation project].

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Lieberman, Henry A.
Date Added:
01/01/2001
Parallel Computing, Fall 2011
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This is an advanced interdisciplinary introduction to applied parallel computing on modern supercomputers. It has a hands-on emphasis on understanding the realities and myths of what is possible on the world's fastest machines. We will make prominent use of the Julia Language software project.

Subject:
Applied Science
Computer Science
Information Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Alan Edelman
Date Added:
01/01/2011
Parallel Programming for Multicore Machines Using OpenMP and MPI, January IAP 2010
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

"This course introduces fundamentals of shared and distributed memory programming, teaches you how to code using openMP and MPI respectively, and provides hands-on experience of parallel computing geared towards numerical applications."

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Evangelinos, Constantinos
Date Added:
01/01/2010
Passion-Driven Statistics 2nd Edition.pdf
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Here is the link to the new Passion-Driven Statistics e-book!

http://bit.ly/Passion-DrivenStatistics

Passion-Driven Statistics is an NSF-funded, multidisciplinary, project-based curriculum that supports students in conducting data-driven research, asking original questions, and communicating methods and results using the language of statistics. The curriculum supports students to work with existing data covering psychology, health, earth science, government, business, education, biology, ecology and more. From existing data, students are able to pose questions of personal interest and then use statistical software (e.g. SAS, R, Python, Stata, SPSS) to answer them. The e-book is presented in pdf format for ease of use across platforms. It can also be customized by downloading and editing the .iba file (available through the link below) using the free “iBook Author” software.

http://bit.ly/EditPDSe-book

For more information, contact Lisa Dierker, ldierker@wesleyan.edu or check out the Passion-Driven Statistics website at https://passiondrivenstatistics.com/

Subject:
Applied Science
Computer Science
Mathematics
Psychology
Social Science
Social Work
Statistics and Probability
Material Type:
Activity/Lab
Full Course
Homework/Assignment
Lesson Plan
Textbook
Author:
Kristin Flaming
Lisa Dierker
Date Added:
04/02/2020
Physics of Microfabrication: Front End Processing, Fall 2004
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Fundamental principles of the processes used in the fabrication of silicon monolithic integrated circuits. Physical models of bulk crystal growth, thermal oxidation, solid-state diffusion, ion implantation, epitaxial deposition, chemical vapor deposition, and physical vapor deposition. Refractory metal silicides, plasma and reactive ion etching, and rapid thermal processing. Process modeling and simulation. Technological limitations on integrated circuit design and fabrication. VLSI fundamentals.

Subject:
Applied Science
Computer Science
Physical Science
Physics
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Hoyt, Judy
Date Added:
01/01/2004
Probabilistic Systems Analysis and Applied Probability, Fall 2010
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Welcome to 6.041/6.431, a subject on the modeling and analysis of random phenomena and processes, including the basics of statistical inference. Nowadays, there is broad consensus that the ability to think probabilistically is a fundamental component of scientific literacy. For example: The concept of statistical significance (to be touched upon at the end of this course) is considered by the Financial Times as one of "The Ten Things Everyone Should Know About Science". A recent Scientific American article argues that statistical literacy is crucial in making health-related decisions. Finally, an article in the New York Times identifies statistical data analysis as an upcoming profession, valuable everywhere, from Google and Netflix to the Office of Management and Budget. The aim of this class is to introduce the relevant models, skills, and tools, by combining mathematics with conceptual understanding and intuition.

Subject:
Applied Science
Computer Science
Information Science
Mathematics
Statistics and Probability
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Bertsekas, Dimitri
Tsitsiklis, John
Date Added:
01/01/2010
Programming Languages: Application and Interpretation
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Unlike some other textbooks, this one does not follow a top-down narrative. Rather it has the flow of a conversation, with backtracking. We will often build up programs incrementally, just as a pair of programmers would. We will include mistakes, not because I don’t know the answer, but because this is the best way for you to learn. Including mistakes makes it impossible for you to read passively: you must instead engage with the material, because you can never be sure of the veracity of what you’re reading.

The main programming language used in this book is Racket. Like with all operating systems, however, Racket actually supports a host of programming languages, so you must tell Racket which language you’re programming in.

This textbook has been used in classes at: Brown University, Cal Poly, Columbus State University, Northeastern University, NYU, Reed College, UC-San Diego, UC-Santa Cruz, University of Rhode Island, University of Utah, Westmont College, Williams College, and Worcester Polytechnic Institute.

Subject:
Applied Science
Computer Science
Material Type:
Textbook
Provider:
Brown University
Author:
Shriram Krishnamurthi
Date Added:
05/22/2019
Programming Languages, Fall 2002
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Principles of functional, imperative, and logic programming languages. Meta-circular interpreters, semantics (operational and denotational), type systems (polymorphism, inference, and abstract types), object oriented programming, modules, and multiprocessing. Case studies of contemporary programming languages. Programming experience and background in language implementation required. From the course home page: The course involves substantial programming assignments and problem sets as well as a significant amount of reading. The course uses the SCHEME+ programming language for all of its assignments.

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Ernst, Michael Dean
Date Added:
01/01/2002
Programming for the Puzzled, Spring 2018
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

This class builds a bridge between the recreational world of algorithmic puzzles (puzzles that can be solved by algorithms) and the pragmatic world of computer programming, teaching students to program while solving puzzles. Python syntax and semantics required to understand the code are explained as needed for each puzzle.

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Srini Devadas
Date Added:
01/01/2018
Programming for the Web: From Soup to Nuts: Implementing a complete GIS web page using HTML5, CSS, JavaScript, Node.js, MongoDB, and Open Layers
Unrestricted Use
CC BY
Rating
0.0 stars

This book is designed to be used as a class text but should be easily accessible to programmers interested in Web Programming. It should even be accessible to an advanced hobbyist.

The original goal behind this text was to help students doing research with me in Web based mapping applications, generally using Open Layers. The idea was to provide persistent storage using REST and simple http request from JavaScript to store the data on a server.

Subject:
Applied Science
Computer Science
Material Type:
Textbook
Provider:
Gettysburg College
Author:
Charles W. Kann III
Date Added:
09/11/2018
Python for Everybody: Exploring Data In Python 3
Unrestricted Use
CC BY
Rating
0.0 stars

New Edition! The goal of this book is to provide an Informatics-oriented introduction to programming. The primary difference between a computer science approach and the Informatics approach taken in this book is a greater focus on using Python to solve data analysis problems common in the world of Informatics.

Subject:
Applied Science
Computer Science
Material Type:
Textbook
Author:
Charles Severance
Date Added:
05/22/2019
Quantitative Physiology: Cells and Tissues, Fall 2004
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

Principles of mass transport and electrical signal generation for biological membranes, cells, and tissues. Mass transport through membranes: diffusion, osmosis, chemically mediated, and active transport. Electric properties of cells: ion transport; equilibrium, resting, and action potentials. Kinetic and molecular properties of single voltage-gated ion channels. Laboratory and computer exercises illustrate the concepts. For juniors and seniors. Students engage in extensive written and oral communication exercises.

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
M.I.T.
Provider Set:
M.I.T. OpenCourseWare
Author:
Freeman, Dennis
Date Added:
01/01/2004
Quantum Cryptography
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating
0.0 stars

How can you tell a secret when everyone is able to listen in? In this course, you will learn how to use quantum effects, such as quantum entanglement and uncertainty, to implement cryptographic tasks with levels of security that are impossible to achieve classically.

This interdisciplinary course is an introduction to the exciting field of quantum cryptography, developed in collaboration between QuTech at Delft University of Technology and the California Institute of Technology.

By the end of the course you will

Be armed with a fundamental toolbox for understanding, designing and analyzing quantum protocols.
Understand quantum key distribution protocols.
Understand how untrusted quantum devices can be tested.
Be familiar with modern quantum cryptography – beyond quantum key distribution.
This course assumes a solid knowledge of linear algebra and probability at the level of an advanced undergraduate. Basic knowledge of elementary quantum information (qubits and simple measurements) is also assumed, but if you are completely new to quantum information additional videos are provided for you to fill in any gaps.

Subject:
Applied Science
Computer Science
Material Type:
Full Course
Provider:
Delft University of Technology
Provider Set:
Delft University OpenCourseWare
Author:
Stephanie Wehner
Thomas Vidick
Date Added:
05/22/2019