View on GitHub

Welcome to my homepage!

A GitHub page made for Operating System class assignment.

HOME


Top 10 List of Week 06

  1. Concurrency
    Concurrency is the tendency for things to happen at the same time in a system. Concurrency is a natural phenomenon, of course. In the real world, at any given time, many things are happening simultaneously. When we design software to monitor and control real-world systems, we must deal with this natural concurrency.

  2. Dealing with Concurrencies
    When dealing with concurrency issues in software systems, there are generally two aspects that are important: being able to detect and respond to external events occurring in a random order, and ensuring that these events are responded to in some minimum required interval. If each concurrent activity evolved independently, in a truly parallel fashion, this would be relatively simple: we could simply create separate programs to deal with each activity. The challenges of designing concurrent systems arise mostly because of the interactions which happen between concurrent activities. When concurrent activities interact, some sort of coordination is required.

  3. GnuPG or GPG
    GnuPrivacy Guard (GPG) allows you to securely encrypt files so that only the intended recipient can decrypt them. Specifically, GPG complies with the OpenPGP standard. It is modeled on a program called Pretty Good Privacy (PGP). PGP was written in 1991 by Phil Zimmerman.

  4. Encryption Key
    GPG relies on the idea of two encryption keys per person. Each person has a private key and a public key. The public key can decrypt something that was encrypted using the private key. To send a file securely, you encrypt it with your private key and the recipient’s public key. To decrypt the file, they need their private key and your public key. Public keys must be shared. You need to have the public key of the recipient in order to encrypt the file, and the recipient needs your public key to decrypt it. There is no danger in making your public keys just that—public. In fact, there are Public Key Servers for that very purpose, as we shall see. Private keys must be kept private. If your public key is in the public domain, then your private key must be kept secret and secure.

  5. Process Concept
    A process is basically a program in execution. The execution of a process must progress in a sequential fashion. In definition, it is an entity which represents the basic unit of work to be implemented in the system.

  6. Process in Memory
    When a program is loaded into the memory and it becomes a process, it can be divided into four sections: stack, heap, text, and data.

  7. Stack
    The process Stack contains the temporary data such as method/function parameters, return address and local variables.

  8. Heap
    This is dynamically allocated memory to a process during its run time.

  9. Text
    This includes the current activity represented by the value of Program Counter and the contents of the processor’s registers.

  10. Data
    This section contains the global and static variables.