Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- == Tick 10 ==
- interrupts: on -> off
- Time: 10, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Entering SimpleTestenter TestValueMinusOne, value=0...
- Forking thread child1 #0 with func=0x804a96b, arg=1, join=YES
- interrupts: on -> off
- Putting thread child1 #0 on ready list.
- interrupts: off -> on
- == Tick 20 ==
- interrupts: on -> off
- Time: 20, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Forking thread child2 #0 with func=0x804a96b, arg=2, join=YES
- interrupts: on -> off
- Putting thread child2 #0 on ready list.
- interrupts: off -> on
- == Tick 30 ==
- interrupts: on -> off
- Time: 30, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Forking thread child3 #0 with func=0x804a926, arg=1, join=YES
- interrupts: on -> off
- Putting thread child3 #0 on ready list.
- interrupts: off -> on
- == Tick 40 ==
- interrupts: on -> off
- Time: 40, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Forking thread child4 #0 with func=0x804a926, arg=2, join=YES
- interrupts: on -> off
- Putting thread child4 #0 on ready list.
- interrupts: off -> on
- == Tick 50 ==
- interrupts: on -> off
- Time: 50, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Thread main #0 is calling join on thread child1 #0
- In JoinHit for Thread child1 #0.
- interrupts: on -> off
- thread main releases semaphore Join?
- interrupts: off -> on
- == Tick 60 ==
- interrupts: on -> off
- Time: 60, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Sleeping thread main #0
- Switching from thread main #0 to thread child1 #0
- interrupts: off -> on
- == Tick 70 ==
- interrupts: on -> off
- Time: 70, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- **** Dec thread 1 new value -1
- Thread child1 #0 is here to revive the thread that called it
- interrupts: on -> off
- thread child1 acquires semaphore Join?
- interrupts: off -> on
- == Tick 80 ==
- interrupts: on -> off
- Time: 80, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Putting thread main #0 on ready list.
- thread child1 releases semaphore in_join
- interrupts: off -> on
- == Tick 90 ==
- interrupts: on -> off
- Time: 90, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Finishing thread child1 #0
- Sleeping thread child1 #0
- Switching from thread child1 #0 to thread child2 #0
- interrupts: off -> on
- == Tick 100 ==
- interrupts: on -> off
- Time: 100, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- **** Dec thread 2 new value -2
- Thread child2 #0 is here to revive the thread that called it
- interrupts: on -> off
- Sleeping thread child2 #0
- Switching from thread child2 #0 to thread child3 #0
- interrupts: off -> on
- == Tick 110 ==
- interrupts: on -> off
- Time: 110, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Yielding thread child3 #0
- Putting thread child3 #0 on ready list.
- Switching from thread child3 #0 to thread child4 #0
- interrupts: off -> on
- == Tick 120 ==
- interrupts: on -> off
- Time: 120, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Yielding thread child4 #0
- Putting thread child4 #0 on ready list.
- Switching from thread child4 #0 to thread main #0
- Now in thread main #0
- Deleting thread child1 #0
- thread main acquires semaphore in_join
- interrupts: off -> on
- == Tick 130 ==
- interrupts: on -> off
- Time: 130, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Thread main #0 is calling join on thread child2 #0
- In JoinHit for Thread child2 #0.
- interrupts: on -> off
- Putting thread child2 #0 on ready list.
- thread main releases semaphore Join?
- interrupts: off -> on
- == Tick 140 ==
- interrupts: on -> off
- Time: 140, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Sleeping thread main #0
- Switching from thread main #0 to thread child3 #0
- Now in thread child3 #0
- interrupts: off -> on
- == Tick 150 ==
- interrupts: on -> off
- Time: 150, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- **** Inc thread 1 new value -1
- Thread child3 #0 is here to revive the thread that called it
- interrupts: on -> off
- Sleeping thread child3 #0
- Switching from thread child3 #0 to thread child4 #0
- Now in thread child4 #0
- interrupts: off -> on
- == Tick 160 ==
- interrupts: on -> off
- Time: 160, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- **** Inc thread 2 new value -1
- Thread child4 #0 is here to revive the thread that called it
- interrupts: on -> off
- Sleeping thread child4 #0
- Switching from thread child4 #0 to thread child2 #0
- Now in thread child2 #0
- thread child2 acquires semaphore Join?
- interrupts: off -> on
- == Tick 170 ==
- interrupts: on -> off
- Time: 170, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Putting thread main #0 on ready list.
- thread child2 releases semaphore in_join
- interrupts: off -> on
- == Tick 180 ==
- interrupts: on -> off
- Time: 180, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Finishing thread child2 #0
- Sleeping thread child2 #0
- Switching from thread child2 #0 to thread main #0
- Now in thread main #0
- Deleting thread child2 #0
- thread main acquires semaphore in_join
- interrupts: off -> on
- == Tick 190 ==
- interrupts: on -> off
- Time: 190, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Thread main #0 is calling join on thread child3 #0
- In JoinHit for Thread child3 #0.
- interrupts: on -> off
- Putting thread child3 #0 on ready list.
- thread main releases semaphore Join?
- interrupts: off -> on
- == Tick 200 ==
- interrupts: on -> off
- Time: 200, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Sleeping thread main #0
- Switching from thread main #0 to thread child3 #0
- Now in thread child3 #0
- thread child3 acquires semaphore Join?
- interrupts: off -> on
- == Tick 210 ==
- interrupts: on -> off
- Time: 210, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Putting thread main #0 on ready list.
- thread child3 releases semaphore in_join
- interrupts: off -> on
- == Tick 220 ==
- interrupts: on -> off
- Time: 220, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Finishing thread child3 #0
- Sleeping thread child3 #0
- Switching from thread child3 #0 to thread main #0
- Now in thread main #0
- Deleting thread child3 #0
- thread main acquires semaphore in_join
- interrupts: off -> on
- == Tick 230 ==
- interrupts: on -> off
- Time: 230, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- Thread main #0 is calling join on thread child4 #0
- In JoinHit for Thread child4 #0.
- interrupts: on -> off
- Putting thread child4 #0 on ready list.
- thread main releases semaphore Join?
- interrupts: off -> on
- == Tick 240 ==
- interrupts: on -> off
- Time: 240, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Sleeping thread main #0
- Switching from thread main #0 to thread child4 #0
- Now in thread child4 #0
- thread child4 acquires semaphore Join?
- interrupts: off -> on
- == Tick 250 ==
- interrupts: on -> off
- Time: 250, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Putting thread main #0 on ready list.
- thread child4 releases semaphore in_join
- interrupts: off -> on
- == Tick 260 ==
- interrupts: on -> off
- Time: 260, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- interrupts: on -> off
- Finishing thread child4 #0
- Sleeping thread child4 #0
- Switching from thread child4 #0 to thread main #0
- Now in thread main #0
- Deleting thread child4 #0
- thread main acquires semaphore in_join
- interrupts: off -> on
- == Tick 270 ==
- interrupts: on -> off
- Time: 270, interrupts off
- Pending interrupts:
- End of pending interrupts
- interrupts: off -> on
- congratulations! passed.
- interrupts: on -> off
- Finishing thread main #0
- Sleeping thread main #0
- Machine idling; checking for interrupts.
- Time: 270, interrupts off
- Pending interrupts:
- End of pending interrupts
- Machine idle. No interrupts to do.
- No threads ready or runnable, and no pending interrupts.
- Assuming the program completed.
- Machine halting!
- Ticks: total 270, idle 0, system 270, user 0
- Disk I/O: reads 0, writes 0
- Console I/O: reads 0, writes 0
- Paging: faults 0, outs 0, tlb miss: 0
- Network I/O: packets received 0, sent 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement