wiki:Linux2015

2015年春Linux操作系统分析 Topics in Linux Operating Systems,Spring 2015

2016年春Linux操作系统分析请看这里: wiki:Linux2016

  • Instructors: Mengning(孟宁) and Chunjie Li(李春杰)
  • 欢迎加入QQ群,群号:237749113

重要通知

课程内容

  • 基础与实验部分通过MOOC方式授课,http://mooc.study.163.com/course/USTC-1000029000 (由孟宁老师负责,1-8周每周放出视频,实验作业在线提交,1、2周线下课堂答疑讨论),获得MOOC证书是通过课程的必要条件。
    • 计算机是如何工作的?(存储程序计算机、函数调用堆栈、中断)、利用mykernel实验模拟硬件平台
      • Without understanding the concepts and theory of Operating system, you really can not understand why Linux kernel is coded in that way.
    • Linux系统架构和执行过程概览、内核源代码导读、构造一个简单的Linux系统
    • 程序和进程
    • 系统调用
    • 进程切换
    • Linux内核的实质和Linux系统的一般执行过程
  • 进阶部分(由李春杰老师负责,5-8周)
    • 中断、时钟
    • 内存管理
    • 文件系统
    • device drivers, network architecture, etc.
  • 研讨部分(由孟宁老师负责,第1周具体安排任务,9周和11周)
    • 研读分享The evolution of operating systems.
      • Per Brinch Hansen "The evolution of operating systems." In Classic operating systems, pp. 1-34. Springer New York, 2001.
      • 研读分享操作系统进化简史,要求每人选择一个系统,共24个系统先到先得每个系统一个人负责,将您的学号姓名放在操作系统进化简史目录对应的系统的右侧
      • 下载该系统的论文原文精读(务必将该论文原文上传到对应的wiki页面),结合The evolution of operating systems一文中的评述,深刻理解其中的关键理论和概念
      • 结果:准备一个分享ppt(ppt也要上传到对应的wiki页面)和大约10分钟左右的分享演讲,如果没有搞透彻将安排第二次分享
    • 学习分享如下系统,组队选择每组不多于3人,先到先得每个系统限一组,请组长将组员的学号姓名放置在右侧
      • 要求:在初步调研学习的基础上第二周准备一个ppt分享一下该项目概述和小组研究学习计划,计划应该包括系统搭建、需要研究学习的相关背景原理、源代码分析等
      • wiki:KVM 【JG14225032 卢鹏 SA614226256 唐国泽 SA14226356 李登宇】【SA14226359 韩洋 SA14226194 陈耀光 SA14226257 张必红】
      • wiki:LXC 【SA14226411 罗晓波 SA14226174 邱聪 SA14226294 徐洁】
      • wiki:OpenVZ 【JG14225070 沈鑫 JG14225086 李洋】
      • wiki:CoreOS 【JG14225050 林万喜 SA14226427 徐彤】【SA14226217 郑斌 JG14225055 张雨梅 SA14226221 胡亚雄】
      • wiki:docker JG14225079 朋翔 SA14226181 肖勇 SA14226160 陈功 【SA14226227 许松 SA14226258 吴忠伟 SA14226399 黄志恒】
    • 最后两周专题讨论各项目,至多共39个坑供选择,最后无题目可选的同学最迟在第二周上课时与我沟通安排选题。
    • 具体进度要求
      • Milestone 1:第二周结束前,下载需要的论文原文上传到对应的wiki页面,泛读相关资料理解其大致的范围,对于几个开源项目需要有一人完成要求的ppt和分享。
      • Milestone 2:第四周结束前,撰写一篇署名博客(姓名+中科大软件学院+原创内容转载请注明出处)讨论您的学习心得和进展情况,请将URL统一放在wiki:Linux2015Week4 ,我到时检查一下
      • Milestone 3:第八周结束前,彻底搞懂需要学习研究的内容,完成汇报的ppt和演示的内容,并更新到对应的wiki页面上
  • 备注
    //在64位环境下编译成32位的汇编
    gcc -S -o ccode32.s ccode.c -m32
    //链接时会缺少构建32 位可执行程序缺少的包,使用以下指令安装:
    sudo apt-get install libc6-dev-i386
    //编译链接成32位的可执行文件
    gcc -o ccode32 ccode.c -m32
    

优秀作业:

参考资料

Last modified 19 months ago Last modified on 02/14/16 10:06:58

Attachments (3)

Download all attachments as: .zip