2020年企业培训培训资料 (6)

上传人:精****库 文档编号:136422337 上传时间:2020-06-28 格式:DOC 页数:22 大小:129.61KB
返回 下载 相关 举报
2020年企业培训培训资料 (6)_第1页
第1页 / 共22页
2020年企业培训培训资料 (6)_第2页
第2页 / 共22页
2020年企业培训培训资料 (6)_第3页
第3页 / 共22页
2020年企业培训培训资料 (6)_第4页
第4页 / 共22页
2020年企业培训培训资料 (6)_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《2020年企业培训培训资料 (6)》由会员分享,可在线阅读,更多相关《2020年企业培训培训资料 (6)(22页珍藏版)》请在金锄头文库上搜索。

1、新人培训阶段学习资料上海核心信息技术有限公司Version 0.02 (2011.03)目录课程介绍1课程大纲2第一阶段Linux开发基础2第二阶段嵌入式C语言编程强化3第三阶段Linux用户态开发8第四阶段Linux内核态及驱动开发10第五阶段软件开发流程1120课程介绍本课程旨在发现具备开发Linux下驱动程序的人才,新入社员将通过一个月的时间参照本教程熟悉Linux下设备驱动开发必须的知识。培训结束后符合要求的新人将进入公司具体项目组熟悉具体项目的开发方法。课程大纲本课程大纲内列出的任务基本由员工自己动手解决为主,通常每天上午指导人员将进行昨日实验结果评价及当日任务安排,对于工作任务不清

2、楚的地方请及时向指导人员提出。下午主要为新员工个人实验时间。第一阶段Linux开发基础2-3天通过本课程的学习,使新员工能够了解Linux操作系统的概念,熟练掌握Linux下的基本命令、常用工具的使用方面的知识。学习内容: 公司安全保密教育,日报格式说明 Linux常用命令,文本编辑器Vi,简单Shell脚本编程 嵌入式Linux开发环境基础:Gcc,Gdb,Make和MakefileGCC ARM编译环境安装(Sourcery G+ Lite Edition for ARM) 软件版本管理器Svn 嵌入式软件开发环境搭建与使用x86 linux内核编译versatile arm linux内

3、核编译QEMU运行linux实验:1. 开发环境配置,安装ubuntu虚拟机,熟悉Linux使用2. 配置X86开发环境,编译x86 Linux内核,在QEMU下运行3. 配置ARM开发环境,编译arm Linux内核,在QEMU下运行4. 编写Hello World程序,在x86/arm Linux QEMU下运行5. 编写一个脚本,统计一个目录下面所有C代码的行数。6. 这些格式的如何去解压.tar/bz2/tar.bz2/tar.gz/tar.tar/.Z/.zip/.rar第二阶段嵌入式C语言编程强化3-5天本课程的主要目标是通过编写代码的方式,加强对于C语言编程和数据结构的掌握程度。

4、回答如下16道国外经典的面向嵌入式语言面试题1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)2. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。3. 预处理器标识#error的目的是什么?4. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?5. 用变量a给出下面的定义 a) 一个整型数(An integer) b) 一个指向整型数的指针(A pointer to an integer) c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer) d) 一个有

5、10个整型数的数组(An array of 10 integers) e) 一个有10个指针的数组,该指针是指向一个整型数的(An array of 10 pointers to integers) f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers) g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer) h) 一个有10个指针的数组,该指针指向一个函数,

6、该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )6. 关键字static的作用是什么?7关键字const是什么含意? 8. 关键字volatile有什么含意 并给出三个不同的例子。9. 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。10. 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工

7、程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。11. 中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩展让标准C支持中断。具体所代表的事实是,产生了一个新的关键字 _interrupt。下面的代码就使用了_interrupt关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的。_interrupt double compute_area (double radius) double area = PI * radius * radius; printf( Area = %f, area)

8、; return area; 12 . 下面的代码输出是什么,为什么?void foo(void) unsigned int a = 6; int b = -20; (a+b 6) puts( 6) : puts(=3,(Y-X)的绝对值=3,保证两次置位不会重合Output更改后的寄存器值R(16进制输出)Sample Input12345678,0,3Sample Output1234567cvoid main()int R,X,Y;scanf(%d,%d,%d,&R,&X,&Y);R&=(1X);R|=6(Y-3);R&=(1(Y-2);printf(the R value is %d,

9、R); 排序编写一个排序程序。被排序的文件有8MB大小,一行一个随机整数(ASCII格式)。要求对这些整数进行排序,并计算平均值,打印出排序所需的时间。#include stdio.h#include stdlib.h#include math.h#include time.hvoid run(int* pData,int left,int right) int i,j;int middle,iTemp; i = left; j = right;middle = pDataleft; dowhile(pDataimiddle) & (imiddle) & (jleft) j-; if(i=j)

10、 iTemp = pDatai; pDatai = pDataj;pDataj = iTemp;i+;j-; while(i=j); if(lefti)run(pData,i,right); void QuickSort(int* pData,long Count) run(pData,0,Count-1); int main(int argc, char* argv)clock_t start,end; /time_t a,b;char fstr20; int m_data1024; long count=0; long sum=0; long avr;long i;FILE* m_file; if(NULL= argv0)exit(1);m_file=fopen(argv0 , r); if(m_file=NULL) printf(error); exit(1); while(NULL!=fgets(fstr,20,m_file) m_datacount=atoi(fstr); count+;start=clock(); /a=time(NULL); QuickSort(m_data,count); end=clock();printf( %6.3f secondsn,(double)(end-start)/18.2); /b=time(NULL)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号