CPU Components

Components in a CPU

General purpose Registers

  • Register
    • A synonym for memory in computer science
  • General purpose reigster
    • A memory cell
  • Each general purpose register has a unique name
  • It is used to 
    • store (and recall) intermediate result of complex computations

Arithmetic and Logic Unit (ALU)

  • It is a complex electrical circuit that can perform Mathematical (+,-,x,/) and logical operation (<, <=, >, >=, and, or)
  • The output (result) of the computation (obtained by the ALU) is often stored in a general purpose register

Instruction Register (IR)

  • Contains the current instruction being executed by the CPU
  • The CPU will perform the operation indicated by the instruction code contained in the instruction register

Program Counter (PC)

  • The program counter is a register (memory cell)!
  • This register contains the address (location in memory) of the next instruction after the CPU finishes executing the current instruction in the instruction register
  • The value in the program counter will be increased after the CPU finishes executing one instruction

Processor Status Register (PSR)

  • This register contains the various information about the CPU.
  • Among the information contained in the PSR is
    • The result of a comparison operation
  • When the CPU compares 2 numbers a and a and b,  the outcome of the comparison is stored in the PSR
  • The outcome of a compare operation will allow the CPU to determine the following fact between a and b.


[1] http://www.mathcs.emory.edu/~cheung/Courses/170/Syllabus/01/intro-computer2.html

Hadoop Amazon EC2 Tutorial

1. Amazon EMR
Amazon Elastic MapReduce (Amazon EMR), it distributes the computational work across clusters of virtual servers running in the Amazon cloud using Hadoop

2. Hadoop

  • It users a distributed processing architecture called MapReduce in which a task is mapped to a set of servers for processing. 
  • The results of the computation performed by those servers is then reduced down to a single output set. 
  • One node, designated as the master node, controls the distribution of tasks. 

How to read technical papers in computer science?

From: http://www.cs.iit.edu/~winet/contact.html

How to read technical papers in computer science?
When you read articles or reports, keep the following in mind
  • What is the main contribution of the paper?
  • Is this important, why?
  • Is this a theoretical contribution to some fundamental problems in CS, or a protocol-like contribution, or both?
  • What was the main insight in getting the result?
  • What is not clear to you?
  • What did the authors not do, and you regard important?
  • What are the most important assumptions, are they limiting?
  • What are the possible applications suggested in the paper?
  • How does this relate to other things we have seen?
  • What extensions does this suggest?
  • Can you suggest some project idea based around the ideas in this paper

Renewal Process

Regenerative Process

Stochastic Process Notes, from Lecture 10

1. Definition

A stochastic process X(t) is a regenerative process if
  • Process stochastically starts over at even time S_1, S_2, cdots
  • Times between events X_1, X_2, cdots are i.i.d

2. Regenerative Process v.s. Renewal Process

  • A renewal process N(t) counts (increasing over time) and has property 2 shown above.
  • A regenerative process X(t) keeps track of something else and starts over.

3. Example