MOOC Linux内核之旅小结【转】
转自:https://blog.csdn.net/titer1/article/details/45345123
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/titer1/article/details/45345123
MOOC Linux内核之旅小结
刘柳 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000+titer2008@gmail.com+13073161968
1
2
3
工作两年,时事变迁,梦碎了一地,幸好还有内核。
1 过去的8周
1.1 水过
貌似我的主题帖子数仅此于老师啊,有些帖子质量不高,请大家海涵啊。其实一周就应该两三帖
自己遇到的问题
自己实践的结果及分析
这周比较好的参考资料
1.2懒过
1.2.1 时间之伤
第二章的作业竟然忘记了提交,根本原因是周日当天同时跟进2门Mooc,时间错乱了,甚至连链接也没有弄上去。
从这次教训过后,我每周第一件事就是事先填好本周作业的链接,并且把学习时间提前到周六。
一个好的时间管理对于mooc学习是非常重要的,
尤其要同时跟进多门Mooc课程,要分清主次轻重缓急
1
2
3
4
5
1.2.2 内容之伤
博客的内容,有时老师的板书真的太好了,我就直接摘到博客里面啦,真正消化一章老师的内容,这样做是不可推荐的。
为了弥补内容上的不充实,我的临时之计
是加上我的实践操作演示+实践总结。
不过理论没有深入理解的硬伤依然存在,
希望在后续的学习修正之
1
2
3
4
这个小节其实就是我的遗憾之处吧。
1.3 也上进过
先上图(截至到4月28日),论坛里水过不少,竟然收获了27个赞,谢谢大家。
此外,收获到3个置顶,( ̄▽ ̄)”,谢谢老师和“慕课君的萌宠”。
话说的我的博客让不少人的浏览器崩掉了,真的不好意思啊!8M的动态演示图真的是浏览器的大杀器,最近几期的演示都放的是超链接,大家完全不用担心啦。
真的很喜欢这里大家一起讨论内核的气氛
8周内,有效的学习时间大多数是晚上和大半个周末,每周平均6-8小时(学校里的同学应该比我时间多着)。只能说孟老师的课太有魔力了,竟然坚持下来了。
2 现在
先给出博客内容不完全列表:
动静结合学内核之 linux 系统调用浅析
linux 进程调度switch_to宏浅析+系统执行过程总结
linux可执行文件创建过程 浅析
Linux 进程管理浅析
动静结合学内核:linux idle进程和init进程浅析
How program is executed
3 .未来
如果你喜欢linux,我在csdn专栏等你,这里持续更新内核入门学习的心得。
当前这里的专栏把上面所有内容都已经收录
linux内核入门实践
空说无意义,来真的学习计划吧
3.1 linux内核模块学习
以下是我寻找出的方案,完全可在老师搭建好的实验平台上继续拓展。
利用qume调试kernel moudle 教程
如果上述方案成功的话,linux driver 那本书的代码都可以在qume平台逐步跟踪啦
想着可以逐步跟踪ldd3书上的代码,心里还是蛮激动的
ldd3 github
3.2 linux 内存管理机制
入门的话,先看lkd(robert)的书,再看懂wdy这章图吧
3.3 linux 中断系统机制
其实我们学习系统调用的时候,已经中断的脉络走了大半,不过中断可不仅仅是系统调用。
暂且先留个chinaunix内核版主“瀚海书香”的经典4大中断问题,我还在理解中。
1.什么是硬中断,什么是软中断?
2.不同的硬中断是否可以嵌套?相同的硬中断是否可以嵌套,以及是否按优先级嵌套?硬中断最多可能嵌套几级?
3.不同的软中断是否可以嵌套?相同的软中断是否可以嵌套?
4.软中断在什么时间点被调度?
答案
3.4 linux 某一子系统(v4L2)的分析
工作内容相关,希望得到深入,至少在vediobuf的认识上。
v4L2资料分享
4 总结
4.1 最大的收获
实践出真知,从来没有看到内核的代码离自己这么的近
天时地利人和
1
天时:可以在周末及其他空闲时间进行,当然这是指的学习时间。在学习方面,我接触过linux内核分析与设计/linux代码情景分析等等,但是知识只是混沌在脑子里,正等待机会实践。
地利:有网易云课堂的这个平台(网页版/手机版本)提供资源,还有csdn博客平台的markdown平台支持。
人和:
老师讲的好,理论和实践结合
论坛气氛好,遇到难题可以找到同道中人,老师也会及时回复。
除开上面正统的说法,还有以下的感想。
1)每周的作业考核方式有新意,“博客”形式可以调用自己的主观能动性。写博客和写好博客完全不是一回事。
2)内核原来这么丰富,竟然,进程调度和“庄周梦蝶”联系起。
4.2 最大的遗憾
本课程开始阶段的学习时间管理不好,错过一期的博客作业
每章节中,自己消化理解的文字很不够,借鉴了很多老师的文字
5 其他
五一临近,先写了吧,免得后面熬夜加班。希望亲人和朋友们都身体倍棒啊。
怎么这么文艺,“慕课君的萌宠”你好不?貌似还有3周你就要在本论坛里退休啦
6 附件
用自己的话简要总结您对Linux系统的理解及学习Linux内核的心得;
将您之前的所有博客作业做成目录列表,可以修改原博客理解有误或不准确的地方,可以在目录中给每篇博客加个简要引言,总之,您的这篇学习总结博客能为其他学习者提供一个参考索引;
博客内容的具体要求如下:
题目自拟,内容围绕您对Linux系统的理解及学习Linux内核的心得进行;
将您之前的所有博客作业做成目录列表放在博客中;
http://blog.csdn.net/column/details/kernel-from-scratch.html
总结部分:您在学习《Linux内核分析》课程中最大的收获?
学习完《Linux内核分析》课程后您最大的遗憾是什么?
---------------------
作者:titer1
来源:CSDN
原文:https://blog.csdn.net/titer1/article/details/45345123
版权声明:本文为博主原创文章,转载请附上博文链接!
MOOC Linux内核之旅小结【转】的更多相关文章
- Linux内核之旅
http://www.kerneltravel.net/ Linux内核之旅 Linux Kernel Travel
- 陈莉君教授: 回望踏入Linux内核之旅
本文系转载,著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作者: 陈莉君 来源: 微信公众号linux阅码场(id: linuxdev) 初次踏入Linux 几多耕耘,几多收获 ...
- Linux内核之旅 链表实现
#include "stdio.h" #include "stdlib.h" struct list_head{ struct list_head *prev; ...
- Linux内核之旅 List_entry()
#include "iostream" #define List_entry(type,member)\ (type *)(()->data)) ) using namesp ...
- linux 内核之旅
http://www.kerneltravel.net/?p=534 http://mp.weixin.qq.com/mp/homepage?__biz=MzI3NzA5MzUxNA==&hi ...
- Linux内核学习笔记
1.vanbreaker的专栏 2.LinuxKernel Exploration 3.DroidPhone的专栏 4.Linux内核研究以及学习文档和ARM学习以及研究的开放文档 [力荐] 5. ...
- Nginx之旅系列 - Nginx日志功能 PK Linux内核printk
题记:Nginx之旅系列是用来记录Nginx从使用到源码学习的点点滴滴,分享学习Nginx的快乐 Nginx 首页: http://nginx.org/ Nginx日志功能 PK Linux内核pri ...
- 《Linux内核分析》第六周学习小结
进程的描述和进程的创建 一.进程的描述 进程描述符task_struct数据结构: (1)操作系统的三大功能: 进程管理.内存管理.文件系统 (2)进程的作用: 将信号.进程间通信.内存管理和文件系统 ...
- 【MOOC EXP】Linux内核分析实验八报告
程涵 原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的切换和系统的一般执行过程 知识点 ...
随机推荐
- collections 模块之Counter
Counter字典的子类,用于统计哈希对象 from collections import Counter users = ["body1","body11", ...
- ElasticSearch的插件(Plugins)介绍
ElasticSearch的插件(Plugins)介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 目前可以扩展ElasticSearch功能的插件有很多,比如:添加自定义的映 ...
- hadoop 开发环境搭建
一,安装java环境 添加java环境变量 vi /etc/profile # add by tank export JAVA_HOME=/data/soft/jdk/jdk1.7.0_71 ex ...
- JAVA核心技术I---JAVA基础知识(package和import)
一:package 所有的Java类都是放置在同一个目录下面的,因此类之间的相互调用无需显式声明调用. –同一个目录下,两个类的名字不能相同 –文件过多,查找和修改都不易,且容易出 Java支持多个目 ...
- 15. 迭代器模式(Iterator Pattern)
动机(Motivate): 在软件构建过程中,集合对象内部结构常常变化各异.但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历 ...
- cocos-2dx 3.17 环境搭建 与 新建工程
由于上次在ubuntu中安装了cocos2dx的时候环境被破坏了,所以本文是基于 Windows 编写的 平台: OS : windows 10 compiler : VS 2015 下载 coc ...
- 【转】C语言中的符号优先级
转自: http://blog.csdn.net/huangblog/article/details/8271791 虽然在日常使用中,添加括号来明确规定运算符优先级是一种常识,但毕竟学校考试就喜欢考 ...
- java读取配置文件信息
ResourceBundle resource = ResourceBundle.getBundle("shopxx");//不要加.properties后缀,我加了报错 reso ...
- wav音频文件格式解析【个人笔记】(自用)
1. WAV格式 wav是微软开发的一种音频文件格式,注意,wav文件格式是无损音频文件格式,相对于其他音频格式文件数据是没有经过压缩的,通常文件也相对比较大些.. 支持多种音频数字,取样频率和声道, ...
- 转---变量LEGB规则
Python 变量作用域的规则是 LEGB LEGB含义解释: L -- Local(function):函数内的名字空间 E -- Enclosing function locals:外部嵌套函数的 ...