知识点集合:
OS方向:
1. RAM区域划分,无论是否使用SWAP方式,具体模块在RAM的地址的固定方式?在启动过程何时划分?
2.BootLoader如何实现从FLASH Load code到RAM,BootLoader针对OS需要加载那些,裸机情况需要加载那些?
3.FAT32文件体统在OS中扮演的角色,具体结构如何?
4.如果保证自己的OS不会再64K的RAM不会溢出?
5.启动后,OS的进程管理和任务切换的实现机制,具体的实现方式?消息机制如果使用到自己的假OS中来?
6.进程通信的实现机制,大概5中左右,每一种怎么实现,那些可以用到自己打造的OS中来?
7.Andriod的系统研究,及驱动移植开发。
......
AP方向:
1.USB, MMC, SD, LCM, KEY等Driver的开发和移植,能否加载到内核。
2.C++的熟悉程度,面向对象的思想建立过程,至少仔研究涉及到类的章节和虚函数。
3.QT消息机制的实现(Q_OBJECT),能提出QT速度优化的具体建议2点以上,初步了解OpenGL。
4.Andriod的系统移植,Linux 虚拟机和Java开发环境的了解。
5.功能模块的完全独立,并以插件方式封装。
6.当自己OS起来以后,再结合State Machine的UI方式建立完整的系统。
7.Socket的具体实现过程,实践各种通信协议的实现,TCP/IP, NFS文件系统,FTP,Telnet ......
8.UI如果不用QT,WebKit的实现机制。