210 likes | 427 Views
LAB1: Start of your own OS. Qingshu Chen Qingshu.chen714@gmail.com 2013-9-16. At the beginning. Website http://ipads.se.sjtu.edu.cn/courses/os/ Hand-in Ftp ftp: public.sjtu.edu.cn user : xin0625 password : public Due time Sep 30th. Overview of lab1. Step1: Environment build
E N D
LAB1: Start of your own OS Qingshu Chen Qingshu.chen714@gmail.com 2013-9-16
At the beginning • Website • http://ipads.se.sjtu.edu.cn/courses/os/ • Hand-in Ftp • ftp: public.sjtu.edu.cn • user: xin0625 • password:public • Due time • Sep 30th
Overview of lab1 • Step1: Environment build • You can use the Debian image • Step2: PC bootstrap & boot loader • Step3: Coding work, printf and back trace.
Build Environment • Build yourself • Or use the preinstalled VMware image
Build Environment (1/3) • Recommendation • Use VMware workstation • Debian GNU/Linux i386(32-bit)
Build Environment (2/3) • Compiler Toolchain • Binutils-2.19 • Gcc-core-3.4.1 • Gdb-6.8 • You can download the source code and find installation notes at • Ipads.se.sjtu.edu.cn/courses/os • Click the “Tools” link on the left
Build Environment (3/3) • QEMU Emulators • Patched QEMU-0.10.6 • You can download the source code and find installation notes at ipads.se.sjtu.edu.cn/courses/os • ./configure –target-list=“i386-softmmu x86_64-softmmu” & make & make install
User and password • oslab : 111111
Git • Git help to see more git commands
Sample of qemu run • Run the OS • $make qemu • $make qemu-nox • Debug • $make qemu-gdb && $gdb(at another console)
Sample of qemurun • $make grade
Lab1 important notes (1/3) • A script to verify your lab • Make grade • Answer questions in this lab • Don’t modify “grade.sh”, TA will use the original one
Lab1 important notes (2/3) • Coding (80 point) (70%) • Printf(40) • Back trace(40) • Document(report) (15%) • Difficult part in this lab • How you solve the puzzle • Some exercise answers • Interview (15%)
Lab1 important notes (3/3) • No cheating!! • Hand In • Make handin • Rename to {your student id}.tar.gz 5110379001.tar.gz 5110379001_1.tar.gz 5100379001_2.tar.gz • Upload to TA’s public ftp • (xin0625 :upload/joslab1)
Hand-in • $make handin