Education For All

Text size
  • Increase font size
  • Default font size
  • Decrease font size


Course Home

Programming Paradigms - Lecture 14

Get the Flash Player to view video.
Lecture 14 - Sequential Programming Vs. Concurrent Programming

Example in Which Writing Past the End of Array Causes the Return Address of the Function to be Overwritten, Leading to An Infinite Loop, Example in Which Data Is Incorrectly Shared between Two Different Functions, But Can Still be Printed Out Due to the Structure of the Activation Record (Channelling), How Printf's Prototype Uses "...", Which Allows It to Take A Variable Number of Arguments, Why Parameters Are Pushed Onto the Stack From Right to Left, in the Context of Printf Crawling Up the Stack And Functions With A Variable Number of Arguments, Justification For Structs' Fields being Laid Out Sequentially in Memory, in Terms of Casting between Different Structs With Similar Internal Structures, Sequential Programming Vs. Concurrent Programming, Example of Many Different Processes Running in Separate Virtual Address Spaces, Each Mapped to Physical Addresses by A Central Memory Management Unit, How Concurrent Programming (Multiprocessing) Allows Mutiple Processes to Seemingly Run At the Same Time, How Multithreading Allows Multiple Functions in Run 'Simultaneously' Within One Process (E.G. the office Assistant in Microsoft office Or Downloading Songs in Itunes), Real-World Situation that Can be Modeled Using Threads (10 Ticket Agents Simultaneously Selling 150 Tickets)

Prof. Jerry Cain
CS107 Programming Paradigms
(Stanford University: Stanford Engineering Everywhere)
Date accessed: 2009-05-09
License: Creative Commons Attribution 3.0

Lecture Material

Not Available.



Chinese (Simplified) French German Italian Japanese Korean Portuguese Russian Spanish
More educational resources: