os202

A repository for operating systems class fall 2020

View on GitHub

HOME


Top 10 List of Week 01

  1. Virtualization
    Allows one or more “guest” operating systems to run on virtual machines hosted by a single physical machine and the virtual machine manager. Useful for cross-platform development and support. For example, I could run Linux on a virtual machine, hosted by Oracle VM VirtualBox on a Windows based personal computer. I would have full root access to the virtual machine, and if it crashed, the underlying Windows machine should be unaffected.

  2. Cloud computing
    Cloud computing delivers computing, storage, and applications as a service over a network. Types of cloud computing: public cloud - available to anyone willing to pay for the service, private cloud - run by a company for internal use only, hybrid cloud - a cloud with both public and private components, software as a service (SAAS) - applications such as word processors available via the internet, platform as a service (PAAS) - a software stack available for application use, such as a database server, infrastructure as a service (IAAS) - servers or storage available on the internet, such as backup servers, photo storage, or file storage.

  3. Free and open-source software
    Open-Source software is published with the source code, so that anyone can see and optionally modify the code. It is often developed and maintained by a small army of loosely connected often unpaid programmers, each working towards the common good. Free software is licensed to allow no-cost use, redistribution, and modification. GNU/Linux, FreeBSD, and Solaris are examples of popular open-source systems.

  4. Linux
    Linux is an open source Unix-like operating system which typically packaged in a Linux distribution. There are hundreds of Linux distribution as can be seen here ( including the rank ) https://distrowatch.com/dwres.php?resource=popularity . I am using Debian and Ubuntu for this course. Linux is often referred as GNU/Linux because it was built from the components of GNU software.

  5. Regex
    A regular expression is a string that can be used to describe several sequences of characters which use largely in Linux commands. This above website gives me a better understanding about regex in Unix/Linux.

  6. Unix vs Linux
    I was confused about these two terms; do they refer to the same thing? As I skim through the above website, I now get a better understanding of these two different yet share the same goals operating systems. I recommend anyone to learn hands-on Unix/Linux commands and shell scripting in this link https://www.tutorialspoint.com/unix/index.htm !

  7. System Calls
    System calls provide a means for user or application programs to call upon the services of the operating system. They are mostly written in C or C++. The link above shows how to make a system call.

  8. Kernel
    Kernel is the heart of OS which facilitates interaction between hardware and software. Users communicate with the kernel through a program known as the shell. I was so abstract with the idea of it, although it keep being mentioned when explaining what Linux is, until I found this article in Bahasa.

  9. Command-line interface, interpreter and Shell
    CLI serves an interface that execute operating system’s functions or services. The program which handles the interface is called a command-line interpreter. The shell is a command line interpreter; it translates commands entered by the user and converts them into a language that is understood by the kernel. In windows, we can fund cmd.exe, windows PowerShell, and in Linux we can use bash, bourne, or perl shell.

  10. VI commands
    At first, I though VI is an extension of Unix command, but I was wrong. It was just a text editor that expands the capability of Unix commands (such as writing, creating new files, etc.). Go try them out by referring to the above link’s cheat sheet!