This lab is designed to build a system called "replayable Dalvik" whoes internal multi-threading non-determinisms have been recorded.
From this lab, you will learn:
  1. How to build Android from scratch
  2. Deep understanding of Dalvik VM
  3. Knowledges about multi-thread model in Java
  4. System coding ability


  1. Section 1: Build Android and Inside Dalvik
    1. Part 1: Build the system from scratch
    2. Part 2: Inside dalvik opcode
    3. Part 3: Introduction to dalvik
  2. Section 2: Dalvik Thread Model
    1. Part 0: Understanding non-determinism of multithreading
    2. Part 1: Thread notations in different abstractions
    3. Part 2: Identification for threads
  3. Section 3: Synchronization primitive in Dalvik


If there is any problems or suggestions, feel free to contact me. :)
tancheng AT