4 Pages

Lecture11-intro-to-processes-part3

Course: CS 3214, Fall 2011
School: Virginia Tech
Rating:
 
 
 
 
 

Word Count: 1044

Document Preview

3214 Computer Announcements CS Systems Systems Exercise 4 due Sep 30 Project 3 due Oct 14 Lecture 11 Godmar Back CS 3214 Fall 2011 fork() Part 3 THREADS AND PROCESSES #include <sys/types.h> #include <unistd.h> #include <stdio.h> int main(int ac, char *av[]) { pid_t child = fork(); if (child < 0) perror(fork), exit(-1); if (child != 0) { printf...

Register Now

Unformatted Document Excerpt

Coursehero >> Virginia >> Virginia Tech >> CS 3214

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
3214 Computer Announcements CS Systems Systems Exercise 4 due Sep 30 Project 3 due Oct 14 Lecture 11 Godmar Back CS 3214 Fall 2011 fork() Part 3 THREADS AND PROCESSES #include <sys/types.h> #include <unistd.h> #include <stdio.h> int main(int ac, char *av[]) { pid_t child = fork(); if (child < 0) perror(fork), exit(-1); if (child != 0) { printf ("I'm the parent %d, my child is %d\n", getpid(), child); wait(NULL); /* wait for child (join) */ } else { printf ("I'm the child %d, my parent is %d\n", getpid(), getppid()); execl("/bin/echo", "echo", "Hello, World", NULL); } } CS 3214 Fall 2011 fork() vs. exec() fork(): Clone most state of parent, including memory Inherit some state, e.g. file descriptors Keeps program, changes process Called once, returns twice exec(): Overlays current process with new executable Keeps process, changes program Called once, does not return (if successful) CS 3214 Fall 2011 CS 3214 Fall 2011 exit(3) vs. _exit(2) exit(3) destroys current processes OS will free resources associated with it E.g., closes file descriptors, etc. etc. Can have atexit() handlers _exit(2) skips them th Exit status is stored and can be retrieved by parent Single integer Convention: exit(EXIT_SUCCESS) signals successful execution, where EXIT_SUCCESS is 0 CS 3214 Fall 2011 1 If multiple children completed, will take in arbitrary order Can use macros WIFEXITED and WEXITSTATUS to get information about exit status wait() vs waitpid() Blocks until any child exits If status != NULL, will contain value child passed to exit() Return value is the child pid Can also tell if child was abnormally terminated int waitpid(pid_t pid, int *status, int options) Can say which child to wait for CS 3214 Fall 2011 CS 3214 Fall 2011 The fork()/join() paradigm After fork(), parent & child execute in parallel Launch activity that can be done in parallel & wait for its completion Or simply: launch another program and wait for its completion (shell does that) Parent process executes Resulting in a process tree Child process executes Child process exits Parent: join() OS notifies CS 3214 Fall 2011 Unix File Descriptors Unix provides a file descriptor abstraction File descriptors are Small integers that have a local meaning within one process Can be obtained from kernel Several functions create them, e.g. open() Can refer to various kernel objects (not just files) Can be passed to a standard set of functions: read, write, close, lseek, (and more) Can be inherited when a process forks a child CS 3214 Fall 2011 Observations on fork/exit/wait Process can have many children at any point in time Establishes a parent/child relationship Parent: fork() Unlike a fork in the road, here we take both roads Used in many contexts In Unix, join() is called wait() Purpose: void fork10() { pid_t pid[N]; int i; int child_status; for (i = 0; i < N; i++) if ((pid[i] = fork()) == 0) exit(100+i); /* Child */ for (i = 0; i < N; i++) { pid_t wpid = wait(&child_status); if (WIFEXITED(child_status)) printf("Child %d terminated with exit status %d\n", wpid, WEXITSTATUS(child_status)); else printf("Child %d terminate abnormally\n", wpid); } } Wait Example int wait(int *status) Zombies: processes that have exited, but their parent hasnt waited for them Reaping a child process call wait() so that can zombies resources be destroyed Orphans: processes that are still alive, but whose parent has already exited (without waiting for them) Become the child of a dedicated process (init) who will reap them when they exit Run Away processes: processes that (unintentionally) execute an infinite loop and thus dont call exit() or wait() CS 3214 Fall 2011 Examples 0-2 are initially assigned 0 stdin 1 stdout 2 stderr But this assignment is not fixed process can change it via syscalls int fd = open(file, O_RDONLY); int fd = creat(file, 0600); CS 3214 Fall 2011 2 Implementing I/O Redirection dup2 #include <stdio.h> #include <stdlib.h> // redirect stdout to a file int main(int ac, char *av[]) { int c; dup and dup2() system call pipes: pipe(2) int fd = creat(av[1], 0600); if (fd == -1) 1) perror("creat"), exit(-1); if (dup2(fd, 1) == -1) perror("dup2"), exit(-1); while ((c = fgetc(stdin)) != EOF) fputc(c, stdout); } CS 3214 Fall 2011 user view CS 3214 Fall 2011 kernel view The Big Picture 0 1 2 3 open(x) Terminal Device Multiple file descriptors may refer to same open file Within the same process: 4 File Descriptor Process 1 Open File fd = open(file); fd2 = dup(fd); x open(x) close(4) 0 1 Reference Counting File Descriptor 2 3 dup2(3,0) Across anchestor processes: fd = open(file); fork(); But can also open a file multiple times: fd = open(file); fd2 = open(file); In this case, fd and fd2 have different read/write offsets In both cases, closing fd does not affect fd2 Reference Counting at 2 Levels: Kernel keeps track of how many processes refer to a file descriptor fork() and dup() may add refs And keeps track of how many file descriptors refer to open file close(fd) removes reference in current process only! Process 2 CS 3214 Fall 2011 CS 3214 Fall 2011 Practical Implications Number of simultaneously open file descriptors per process is limited 1024 on current Linux, for instance Must make sure fds are closed make sure fds are closed Else open() may fail Number space is reused double-close error may inadvertently close a new file descriptor assigned the same number CS 3214 Fall 2011 IPC via pipes write() read() Fixed Capacity Buffer A bounded buffer providing a stream of bytes flowing through Properties Writer() can put data in pipe as long as there is space If pipe() is full, writer blocks until reader reads() Reader() drains pipe() If pipe() is empty, readers blocks until writer writes Classic abstraction Decouples reader & writer Safe no race conditions Automatically controls relative progress if writer produces data faster than reader can read it, it blocks and OS will likely make CPU time available to reader() to catch up. And vice versa. CS 3214 Fall 2011 3 int main() { int pipe_ends[2]; if (pipe(pipe_ends) == -1) perror("pipe"), exit(-1); int child = fork(); if (child == -1) perror("fork"), exit(-1); if (child == 0) { char msg[] = { "Hi" }; pipe Note: there is no race condition in this code. No matter what the scheduling order is, the message sent by the child will reach the parent. close(pipe_ends[0]); write(pipe_ends[1], msg, sizeof msg); } else { char bread, pipe_buf[128]; close(pipe_ends[1]); printf("Child said "); fflush(stdout); while ((bread = read(pipe_ends[0], pipe_buf, sizeof pipe_buf)) > 0) write(1, pipe_buf, bread); } } CS 3214 Fall 2011 4
Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

Virginia Tech - CS - 3214
AnnouncementsCS 3214Computer SystemsSystemsLecture 12 Exercise 4 due Sep 30 Project 3 due Oct 14 Please read FAQ Hid two samples of code you can use tosimplify your jobGodmar BackCS 3214 Fall 2011esh extensible shell Open-ended assignment En
Virginia Tech - CS - 3214
Announcements Project 3 due Oct 14 Exercise 5 coming out todayCS 3214Computer SystemsSystemsLecture 13Godmar BackCS 3214 Fall 2011Some of the following slides are taken with permission fromComplete Powerpoint Lecture Notes forComputer Systems:
Virginia Tech - CS - 3214
Announcements Project 3 due Oct 14CS 3214Computer SystemsSystemsLecture 14Godmar BackCS 3214 Fall 201110/17/2011Merging Relocatable Object Filesinto an Executable Object FileSome of the following slides are taken with permission fromComplete P
Virginia Tech - CS - 3214
Announcements Project 3 due Oct 14 Exercise 5 due Oct 18CS 3214Computer SystemsSystems Extended by 1 day see piazza Midterm Oct 25 See announcementLecture 15 See sample midterms/final on websiteGodmar BackCS 3214 Fall 2011Some of the followin
Virginia Tech - CS - 3214
CS 3214Computer SystemsLecture 15Godmar BackAnnouncementsProject 3 due Oct 14Exercise 5 due Oct 18Midterm Oct 25Extended by 1 day see piazzaSee announcementSee sample midterms/final on websiteCS 3214 Fall 20111/2/122Some of the following sli
Virginia Tech - CS - 3214
Announcements Midterm Oct 25CS 3214Computer SystemsSystemsLecture 16Godmar BackCS 3214 Fall 2011Some of the following slides are taken with permission fromComplete Powerpoint Lecture Notes forComputer Systems: A Programmer's Perspective (CS:APP)
Virginia Tech - CS - 3214
AnnouncementsCS 3214Computer SystemsSystems Project 4 due Nov 2 Exercise 6 due todayLecture 17Godmar BackCS 3214 Fall 2011Virtual Memory Is not a kind of memory Is a technique that combines one or moreof the following concepts: Address transl
Virginia Tech - CS - 3214
Announcements Project 4 due Nov 2 Stay tuned for exercise 7 Midterm returned todayCS 3214Computer SystemsSystemsLecture 18Godmar BackCS 3214 Fall 201111/4/20112Processes vs Threads Processes execute concurrentlyand share resources:P1 Files
Virginia Tech - CS - 3214
Announcements Project 5 due Nov 16CS 3214Computer SystemsSystemsLecture 19Godmar BackCS 3214 Fall 201111/4/20112Accessing global variables/* Define a mutex and initialize it. */static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;static in
Virginia Tech - CS - 3214
Announcements Project 5 due Nov 16 Exercise 7 due Nov 18CS 3214Computer SystemsSystemsLecture 20Godmar BackCS 3214 Fall 2011Coordinating Multiple Threads Aside from coordinating access to shared items,threads may need to communicate about event
Virginia Tech - CS - 3214
Announcements Project 5 due Nov 16 Ex 7 due Nov 18 Project 6 due Dec 8CS 3214Computer SystemsSystemsLecture 21Godmar BackCS 3214 Fall 2011Some of these slides are substantially derived from slides provided byJim Kurose &amp; Keith Ross. Copyright o
Virginia Tech - CS - 3214
Some of these slides are substantially derived from slides provided byJim Kurose &amp; Keith Ross. Copyright on this material is held by Kurose&amp; Ross. Used with permission. The textbook is Computer Networking:A Top Down Approach Featuring the Internet Jim
Virginia Tech - CS - 3214
Announcements Last exercise: run your project 6 serviceon EC2CS 3214Computer SystemsSystems Due by p6 deadline, posted later today Final ExamExam Dec 12, 7-9pm, 460 Saunders Announcement will be posted onlineLecture 24Godmar BackCS 3214 Fall
Virginia Tech - CS - 3214
CS3214 Fall 2011Exercise 5Due: Monday, Oct 17, 2011. 11:59pm (no extensions).What to submit: Upload a tar archive that contains a text le answers.txt with youranswers for the questions not requiring code, as well as individual les for those that do,a
Virginia Tech - CS - 3214
CS 3214, Fall 2011Malloc Lab: Writing a Dynamic Storage AllocatorDue date: Nov 2, 2011, 11:59pm1IntroductionIn this lab you will be writing a dynamic storage allocator for C programs, i.e., your own versionof the malloc, free and realloc routines. Y
Virginia Tech - CS - 3214
CS3214 Fall 2011Exercise 6Due: Thursday, Oct 27, 2011. 11:59pm (no extensions).What to submit: Upload a single ASCII le with your answers.Part 1 of this exercise should be done on the rlogin machines, using the 64-bit compiler. Part 2 of this exercise
Virginia Tech - CS - 3214
CS 3214 Fall 2011Midterm SolutionCS 3214 Midterm Solution67 students took the midterm. The table below shows who graded whichproblem. If you have questions, contact the person who graded the respectiveproblem first. Students who scored below 40 are a
Virginia Tech - CS - 3214
CS 3214Sample Final Exam (Fall 2009)Sample Final Exam (Fall 2009)Solutions are shown in this style. This exam was given Fall 20091.System Calls (16 pts)a) (12 pts) Consider the following interaction of a user running bash in a terminal. In the table
Virginia Tech - CS - 3214
CS 3214Sample Final Exam (Fall 2010)Sample Final Exam (Fall 2010)Solutions are shown in this style. This exam was given Fall 2010.1. Multithreading (18 pts)a) (15 pts) Mutexes and Condition Variables. Exercise 10 asked that youimplement futures, a c
Virginia Tech - CS - 3214
CS 3214Sample Final Exam (Spring 2010)Sample Final Exam (Spring 2010)Solutions are shown in this style. This exam was given Spring 2010.1.Linking and Loading (12 pts)The following questions are related to linking and loading in a C/Unixenvironment.
Virginia Tech - CS - 3214
CS 3214Sample Midterm (Fall 2009)Sample Midterm (Fall 2009)Solutions are shown in this style. This exam was given in Fall 2009.1.Executing Programs on IA32 (20 pts)a) (8 pts) In lecture, we had discussed how each function obtains its own activation
Virginia Tech - CS - 3214
CS 3214Sample Midterm Exam (Fall 2010)Sample Midterm Exam (Fall 2010)Solutions are shown in this style. This exam was given in Fall 2010.1.Compiling and Linking (25 pts)a) (2 pts) Prototypes. During project 3, your teammate added a functiongive_ter
Virginia Tech - CS - 3214
CS 3214Sample Midterm (Spring 2010)Sample Midterm (Spring 2010)Solutions are shown in this style. This exam was given in Spring 2010.1.Executing Programs on IA32 (30 pts)The following questions relate to how programs are compiled for IA32.a) (8 pts
Virginia Tech - CS - 3214
CS 3214Computer SystemsSystemsSupplementary MaterialGodmar BackNETWORK ADDRESSTRANSLATIONCS 3214Some of these slides are substantially derived from slides provided byJim Kurose &amp; Keith Ross. Copyright on this material is held by Kurose&amp; Ross. Us
Virginia Tech - CS - 3214
Unix Files A Unix file is a sequence of m bytes:CS 3214Computer SystemsSupplementary Material on UnixSystem Calls and Standard I/O B0 , B1, . , Bk , . , Bm-1 All I/O devices are represented as files: /dev/sda2 (/usr disk partition) /dev/tty2 (ter
Virginia Tech - CS - 3214
CS3214 Fall 2011Exercise 4Due: Friday, Sep 30, 2011. 11:59pm (no extensions).What to submit: A tar le that should contain the le answers.txt, which must bean ASCII le with answers for questions 1 and 2. For question 3, which asks for code,include a l
Virginia Tech - CS - 3214
CS3214 Fall 2011Project 6 - The sysstatd Web ServiceDue Date: Thursday, Dec 8, 11:59pm (Late days may be used.)This project can be done in groups of 2 students.1IntroductionThis assignment introduces you to the principles of internetwork communicati
Virginia Tech - CS - 3214
CS3214 Fall 2011Project 5 - Thread Pools and FuturesDue: Wednesday, Nov 16, 2011. 11:59pm. (Late days may be used.)What to submit: Upload a tar ball using the p5 identier that includes the followingles:- threadpool.c with your code.- speedup.pdf wit
Virginia Tech - CS - 3214
CS3214 Fall 2011Exercise 1Due: Tuesday, Aug 30, 2011. 11:59pm (no extensions).1. Using UnixIt is crucial that everybody become productive using a Unix command line, even if thecomputer you are using daily is a Windows machine.Please do the following
Virginia Tech - CS - 3214
CS3214 Fall 2011Exercise 7Due: Friday, Nov 18, 2011. 11:59pm (no extensions).What to submit: A tarball with les uthreads semaphore.c, uthreads mutex.c,and linux lock fairness.c.1. Cooperative User-Level ThreadingUser-level threading packages have be
Virginia Tech - CS - 3214
About MeCS 3214Computer SystemsSystemsLecture 1Godmar Back Undergraduate Work at Humboldt and TechnicalUniversity Berlin PhD University of Utah Postdoctoral Work at Stanford University 8th Year at Virginia Techat Virginia Tech joined August 20
Virginia Tech - CS - 3214
AnnouncementsCS 3214Computer SystemsSystemsExercise 1 due Aug 30Project 1 due Sep 7Team Up NowShould now have access to systems lab (McB 124) viakeycardkeycard Has Unix workstations for you to use Send email to me if it doesnt workLecture 2Go
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 1: Matlab and Basic ComputationsSolutionInstructor: TraniProblem 1One of the basic problems in transportation engineering is determining the performance of vehicles traveling be
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 1: Matlab and Basic ComputationsDate Due: August 31, 2011Instructor: TraniProblem 1One of the basic problems in transportation engineering is determining the performance of vehi
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 2: Transportation SystemsSolutionInstructor: TraniProblem 1Browse various tables and sections of the Pocket Guide to Transportation 2011 and read the the class materials for wee
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 2: Transportation SystemsDate Due: September 7, 2011Instructor: TraniProblem 1Browse various tables and sections of the Pocket Guide to Transportation 2011 and read the the clas
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 3: Vehicle Forces and KinematicsDate Due: September 16, 2011Instructor: TraniProblem 1a) A commuter train with a mass of 305,000 kg. travels downhill at a grade of -2% and 50 mp
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 3: Vehicle Forces and KinematicsDate Due: September 16, 2011Instructor: TraniProblem 1a) A commuter train with a mass of 305,000 kg. travels downhill at a grade of -2% and 50 mp
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 4:Rail Analysis and Stopping/Passing DistancesDate Due: September 26, 2011Instructor: TraniProblem 1The basic resistance of the French TGV rail system can be modeled using a mod
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 4:Rail Analysis and Stopping/Passing DistancesDate Due: September 26, 2011Instructor: TraniProblem 1The basic resistance of the French TGV rail system can be modeled using a mod
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 5: Traffic and Mass Transit ModelingDate Due: October 17, 2011Instructor: TraniProblem 1The Greenberg model is known to be:k u = c ln j kwhere:u is the space mean speed (k
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 5: Traffic and Mass Transit ModelingSolutionInstructor: TraniProblem 1The Greenberg model is known to be:k u = c ln j kwhere:u is the space mean speed (km/hr), k j is the
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 6: Mass Transit and Airport CapacityDate Due: October 26, 2009Instructor: TraniProblem 1A truck runs out of brakes while traveling at 70 mph on an interstate highway in North Ca
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 6: Mass Transit and Airport CapacityDate Due: October 26, 2009Instructor: TraniProblem 1A truck runs out of brakes while traveling at 70 mph on an interstate highway in North Ca
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 7: Geometric Design and Turning ManeuversDate Due: November 2, 2011Instructor: TraniProblem 1a) Calculate the minimum length of a vertical curve designed for an Interstate Highw
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 7: Geometric Design and Turning ManeuversPartial SolutionsInstructor: TraniProblem 1a) Calculate the minimum length of a vertical curve designed for an Interstate Highway with a
Virginia Tech - CEE - 3604
Fall 2011CEE 3604: Introduction to Transportation EngineeringAssignment 8: intersection Analysis and Queueing TheoryDate Due: November 18, 2009Instructor: TraniProblem 1The intersection shown in Figure 1 is to be studied for level of service charact
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 8: intersection Analysis and Queueing TheorySolutionInstructor: TraniProblem 1The intersection shown in Figure 1 is to be studied for level of service characteristics. The inter
Virginia Tech - CEE - 3604
CEE 3604: Introduction to Transportation EngineeringFall 2011Assignment 9: Transportation PlanningDate Due: December 7, 2011Instructor: TraniProblem 1Two nearby cities are connected by two bridges as shown in Figure 1. The distances between Twin Cit
Virginia Tech - CEE - 3604
AirportTerminalPassengerFlowProblemSampleproblemtodemonstratethesolutiontoafirstorderdifferentialequation ifferentialequationinfinitedifferenceformDdL/dt=lambda(t)mu(t)DefinelambdaandmuL(t+1)=L(t)+(lambda(t)mu(t)tlambda(t)=demandfunctionasafunctiono
Virginia Tech - CEE - 3604
3000ColumnCColumnCColumnJ250020001500100020001500100050050000200020406080 100 120 140 160 180 200Speed(km/hr)180160SpaceMean Speed(km/hr)ColumnG2500F lo w( veh /h rp erlan e)Flow(veh/hr)3000140f(x)=2.3181151113x+149.21074629
Virginia Tech - CEE - 3604
Introduction to Transportation EngineeringCar Following ModelsDr. Antonio A. TraniProfessor of Civil and Environmental EngineeringVirginia Polytechnic Institute and State UniversityBlacksburg, Virginia2009Virginia Tech1Approaches to Modeling Traf
Virginia Tech - CEE - 3604
HIGHWAY DESIGN MANUAL100-1June 26, 2006CHAPTER 100BASIC DESIGN POLICIESTopic 101 - Design SpeedIndex 101.1 - Selection of Design SpeedDesign speed is defined as: &quot;a speed selected toestablish specific minimum geometric designelements for a partic
Virginia Tech - CEE - 3604
FLEXIBLE PAVEMENT DESIGN MANUALPUBLISHED BYFLORIDA DEPARTMENT OF TRANSPORTATIONPAVEMENT MANAGEMENT OFFICE605 SUWANNEE STREET, M.S. 32TALLAHASSEE, FLORIDA 32399-0450DOCUMENT NO. 625-010-002-gMARCH 2008UPDATES TO THIS MANUAL WILL BE ANNOUNCED ON PAV
Virginia Tech - CEE - 3604
Introduction to Transportation EngineeringDiscussion of Stopping and Passing DistancesDr. Antonio A. TraniProfessor of Civil and Environmental EngineeringVirginia Polytechnic Institute and State UniversityBlacksburg, VirginiaFall, Spring 2009Virgin
Virginia Tech - CEE - 3604
CEE 3604Transportation GeometricDesignOthersTransportation Engineering (A.A. Trani)1Horizontal Curves (Highways)Transportation Engineering (A.A. Trani)2Note Some Differences with VerticalAlignments The length L is dened along the curvedpath I
Virginia Tech - CEE - 3604
CEE 3604Transportation GeometricDesignHighwaysTransportation Engineering (A.A. Trani)1HistoryRoads have been developed in ancient cultures fortrade and military reasonsSilk Road - 6000 km in lengthAppian Road - Rome to Brindisi (Italy)Source:W
Virginia Tech - CEE - 3604
Introduction to Transportation EngineeringApplications of Queueing Theory to IntersectionAnalysis Level of ServiceDusan Teodorovic and Antonio A. TraniCivil and Environmental EngineeringVirginia Polytechnic Institute and State UniversityBlacksburg,
Virginia Tech - CEE - 3604
Tansportation EngineeringQuick Review of Highway Level of ServiceDr. Antonio A. TraniProfessor of Civil and Environmental EngineeringVirginia Polytechnic Institute and State UniversityBlacksburg, VirginiaSpring 2006Virginia Tech1Introductory Rema
Virginia Tech - CEE - 3604
Tansportation EngineeringCapacity of Mass Transit Technologies (includingAutomated People Movers)Dr. Antonio A. TraniProfessor of Civil and Environmental EngineeringVirginia Polytechnic Institute and State UniversityBlacksburg, VirginiaSpring 2009
Virginia Tech - CEE - 3604
Matlab IntroductionDr. Antonio A. TraniProfessorDept. of Civil and Environmental EngineeringVirginia Tech (copyright A.A. Trani)Purpose of this SectionTo illustrate simple uses of the MATLABTM TechnicallanguageTo help you understand under what cir