Code Monkey home page Code Monkey logo

omscs-notes-notes's Introduction

OMSCS Lecture Notes

This repository contains lecture notes for the classes I am taking or have taken in OMSCS.

Each set of notes for a particular class will live in a subdirectory of the repository root. In each subdirectory, the notes are presented in Markdown format.

If you prefer, you can also view the notes on OMSCS Notes.

Current Courses

Done for the semester!

Completed Courses

  • GIOS
  • CN
  • IIS
  • ML4T
  • Simulation
  • SCS (Authored by Matthew Caseres)
  • DB
  • RAIT

If you notice any grammatical errors or flagrantly confusing sentences, please open a PR and point them out. I proofread my notes after taking them, but mistakes do slip through.

Thank you and happy studying!

omscs-notes-notes's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

omscs-notes-notes's Issues

[TYPO] Simulation - Input Analysis

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.
image

and the formulas after that are missing the n as well.

[TYPO] Operating Systems - Scheduling

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

For metrics, our throughput stays the same, and our average wait and average completion time are on par with SJF, but without needing the a priori knowledge of execution times, which was said was unfeasible in a real system.

[TYPO] Operating Systems - Midterm Exam Review Questions

What needs to be fixed?
In the section "What is a system call?" the line "Examples of system calls include open, send, malloc." exists.
In the errata for those video slides, it states that she meant to use mmap (linux memory acquistion) instead of malloc (c memory acquistion).

[TYPO] Information Security - Midterm 2 Study Guide

Midterm 2

The following typo exists on this page:

The base-rate fallacy of IDS states that if the numbers of intrusions are low compared to the number of legitimate users of a system then the false alarm rate will be high unless the test is extremely discriminating

It should be uses here instead of users.

[TYPO] Operating Systems - Scheduling

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.
Timesharing and Timeslices section, following sentence:

If the task needs to be wait on an I/O operation, or synchronize with another task, the task will execute for less than its timeslice before it is placed on the appropriate queue and preempted.

[TYPO] Operating Systems - Synchronization Constructs

Very tiny typo in the chapter. free below should be changed to busy.
"This implementation introduces a delay every time the thread notices that the lock is free."

Again, thanks for making these notes it is very helpful. I could not imagine watching 1-2 hours of videos for each lectures to review material.

[TYPO] Information Security - Law, Ethics, and Privacy

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

In the modern, digital context, websites and other software capture __use and distribute our information at an unprecedented scale.

Add a comma at the underscore.

[TYPO] Secure Computer Systems - Virtualization and Security

With a virtual machine monitor (VMM or hypervisor) we virtualize all resources of the physical machine and make these virtual resources available to a guest operating system. The gues (typo here; should be guest) operating system does the resource management but the virtual machine monitor takes care of the resource allocation.

Midterm 2 Study Guide Question - Chapter 20 Symmetric Encryption and Message Confidentiality

The answer to the following question is incorrect; question, as well as provided and correct answers are:

Question: In a public-key system using RSA, you intercept the ciphertext C=10 sent to a user whose public key is e=5, n=35. What is the plaintext M (as an integer)?

Provided Answer: n=35, so p = 7 and q = 5, so phi(n) = 6x4 = 24, so d = e^-1 mod phi(n) = 5, since 5x5 = 25 = 1 mod 24, M = C^d (mod N) = 10^5 mod 35 = 25

Correct Answer: 10^5 mod(35) = 25 should be 10^5 mod(35)=5

Answer should be E instead of B

[TYPO] Information Security - Symmetric Encryption

in "Triple DES" section

To encrypt plaintext using triple DES, we first run the encryption process with key k1, followed by the decryption process with a second key k2, followed by the encryption process with a third key k3. To decrypt a ciphertext, we run the process in reverse, decrypting with k3, encrypting with k2, and decrypting again with k1.

"followed by the decryption process with a second key k2" should be changed into "followed by the encryption process with a second key k2"

[TYPO] Secure Computer Systems - Mandatory Access Control

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.
Under the Mandatory Access Control, Label Comparisons heading, there's an intersection operator instead of the "and" operator in the formal definition of determining which label is dominant--the lecture shows the use of and rather than an intersection of the level and compartment:

L1 > L2 (L1 dominates L2) if (L1.level \geq≥ L2.level) \cap∩ (L1.compartment \supset⊃ L2.compartment)
L1 < L2 (L1 is dominated by L2) if (L1.level \leq≤ L2.level) \cap∩ (L1.compartment \subset⊂ L2.compartment)
L1 = L2 if (L1.level = L2.level) \cap∩ (L1.compartment = L2.compartment)

Deadlocks Section, Simple Typo T1 -> T2

What needs to be fixed?

In the Deadlocks section, in the 4th paragraph --

This is where the problem lies. T2 will not be able to lock the mutex for A, because T1 is holding it. T1 will not be able to lock the mutex for B, because T1 T2 is holding it. More importantly, neither T1 nor T2 will be able to release the mutex that the other needs, since they are both blocking trying to acquire the mutex the other has.

[TYPO] Machine Learning Trading - Regression

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

In "Learning APIs" - Code - "leaner" should be "learner" under both Linear Regression & KNN example codes.

[TYPO] Operating Systems - Processes and Process Management

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

Duplicate image under Process Address Space

Is the image under "Process Address Space" supposed to be identical to the one under "What Does a Process Look Like?"

Questions about licenses and copyright

On the home page of omscs-notes I see a copyright notice that says "all rights reserved", but the repositories associated with the website are licensed MIT. Would it be more relevant to inform the user that the content is licensed under MIT so that they are aware of the permissions granted? What rights are you reserving that the user would otherwise have?

Here is a StackOverflow post I found about combining "all rights reserved" with MIT. A somewhat different use, the "all rights reserved" term is within the license in the post.

I believe the Georgia Tech professors that created the courses from which these materials are derived would be the owners of the copyright. One option might be to contact them and ask if they would be willing to license the work to you, or if they would release it to the public under a Creative Commmons license that allows commercial use.

I have always learned better from text content than from audio/visual and these kinds of things are a lifesaver for me. I think this product needs to exist, but I think there is some uncertainty in the continued existence/usefulness of the product. For these notes to remain available and relevant over the next 100 years some form of involvement in an official capacity from GA Tech will be useful.

Update: Asked on Piazza about the appropriate license for this repo - https://github.com/MatthewCaseres/secure-computer-systems, Prof. Mustaque is checking with GA Tech.

[TYPO] ML4T - How Hedge Funds Use the CAPM

What needs to be fixed?
In the section Two Stock Scenario Quiz Solution, the line "Let's consider stock B now, which has a β of 2.0 and an α of -0.01. A β of 2.0 tells us that for every percentage point the market moves, stock A moves two percent. An α of -0.01 tells us that stock A will move 1% below its movement with the market." is probably meant to refer to stock B when talking about stock A.

[TYPO] Information Security - Security Protocols

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

"Bob response with a random value r1, referred to as a challenge."
response -> responds. Security Protocols (Mutual Authentication: Shared Secret)

[TYPO] Information Security - Cyber Security

What needs to be fixed?
Please be specific as possible and add a link to the relevant file/lines.

"we can define risk leverage L = (post - pre) / cost"

Risk leverage should be (pre - post) / cost. If pre is $5, post $4, and cost $0.50, then we have a risk leverage of 2, and the security fix should be implemented. In the above definition, the risk leverage would be -2, and would not be implemented despite the fix costing less than the amount of money saved by it.

[TYPO] Operating Systems - Midterm Exam Review Questions

form should be from
In this section

Describe all the steps which take place for a process to transition form a waiting (blocked) state to a running (executing on the CPU) state.
should be

Describe all the steps which take place for a process to transition from a waiting (blocked) state to a running (executing on the CPU) state.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.