======Introduction====== My name is John Rine. I have four children: Erica, David, Gretchen, and Nathan. I also have three four grandchildren: Victor jr., Lilianna, Daniela, and Gabriel! On August 6, 2009, the anniversary of the dropping of the A bomb on Hiroshima, I was separated from the company where I worked for 12 years. Since I was unemployed, I found that I qualified for educational benefits and enrolled for the Fall semester 2009 at Corning Community College. In December 2010, I graduated with an A.A.S. in Electrical Technology-Electronics and a A.S. in LAS General Studies program each with a 3.85 accumulated GPA. At the same time I have been enrolled in the IT-HPC and Computer Science programs. Since graduating from the Electrical Technology program, however, I have been seeking employment as being unemployed has taken a heavy toll on my family's financial situation. On July 15, 2011, I was hired as a Process Technician at Corning, Incorporated's Sullivan Park Research and Development facility. This semester will be interesting. I will be employed full time and attempt a full course load. I can, however, see the light at the end of the tunnel as this is my last semester. If I am successful, I will graduate with an A.A.S. in IT-HPC and a A.S. in Computer Science. \\ Data Structures Topics\\ http://lab46.corning-cc.edu/haas/fall2011/data\\ The following is a list of the major topics being covered in this course:\\ * Version Control (checkout, commit, update, add, log) * Pointers (address of, assignment, dereferencing) * arrays, pointer arithmetic * pointers to pointers * null pointers * void pointers * function pointers * Static allocation vs. Dynamic allocation * Memory allocation (malloc(), new) * Memory De-allocation (free(), delete) * structures * structure pointer * Linked Lists * Doubly Linked Lists * Stacks (array-based, linked-list based) * Pushing * Popping * Top * Overflow condition (where applicable?) * Underflow condition * LIFO or FIFO? * Queues (array-based, linked-list based) * Enqueuing * Dequeuing * Overrun and Underrun conditions * Computational Complexity * Big-O, Theta, bounds * Sorting Algorithms * Selection sort algorithm * Bubble sort algorithm * Insert sort algorithm * Quick sort algorithm * Merge sort algorithm * Binary Search algorithm * Trees, Binary Trees (nodes, parents, children) * insertion * removal * searching * traversal (pre-order, post-order, in-order) * Graphs * Hash Tables (keys, collisions) \\ System Programming Topics\\ http://lab46.corning-cc.edu/haas/fall2011/sysprog\\ The following is a list of the major topics being covered in this course:\\ * UNIX Systems Programming * User space * Kernel, Kernel space * Users, Files, and the Manual * File Access (open, read, write, lseek, close) * File descriptors * Buffering * System Calls * Directories and File Properties * File Types and File Properties * Bit Sets and Bit Masks * User IDs, Group IDs * Focus on File Systems * Filesystem Structure; inodes and data blocks * Directories * Links * Connection Control * Device files * Race conditions * Atomic Operations * Streams * Terminal Control and Signals * Blocking vs. Non-Blocking * Signals * Event-Driven Programming * Alarms, Interval Timers * Reentrant code, critical sections * Asynchronous input * Processes and Programs * UNIX process model, processes * Parent/Child processes * Shell Variables and the Environment * I/O Redirection and Pipes * I/O Redirection * Pipes * Servers and Sockets * Client/Server model * Coroutines * Connections and Protocols * Server sockets * Client sockets * Zombies * Programming with Datagrams * TCP vs. UDP * Distributed Systems * UNIX domain sockets * Threads * Multithreading * Creating/destroying threads * Sharing data between threads * Synchronizing data * Inter Process Communication * Named pipes * Shared memory * File locks * Semaphores \\ HPC I Experience Topics\\ http://lab46.corning-cc.edu/haas/fall2011/hpc1\\ The following is a list of the major topics being covered in this course: * lab operations * maintenance X * logging X * accessibility * upgrades X * backups X * documentation X * resource usability * remote administration * on-site administration * security - internal X * log analysis * troubleshooting X * security - external