- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统课程设计任务书
总体设计要求
在嵌入式Linux开发环境下,理解和熟练使用常见的嵌入式Linux软件开发工具,如编辑器vim、交叉编译器arm-linux-gcc、工程管理器make等,使用C语言或C++语言编程,完成程序功能的设计、编辑、编译、运行和调试。
系统模块划分合理,必须使用Makefile控制源程序编译。
画出系统流程图或系统结构框架图,完成课程设计报告。
设计报告正文内容不低于2000字(不包括程序代码)。
设计报告不得抄袭。
一、设计题目:基于C语言的学生学籍管理系统
设计内容:
学生的学籍信息包括:学号、姓名、性别、年龄、专业、电话。
实现学生学籍信息的插入,可分别输入学生的相关信息。
能按学生姓名查找和删除单个学生信息。
能够一次性显示所有学生的学籍信息。
使用文件操作函数实现数据的写入和读出,文件名保存为stu.txt。
二、设计题目:基于C语言的生产者-消费者模型设计
设计内容:
多线程同步问题的经典案例,描述了两个共享固定大小缓冲区的线程(生产者和消费者)在实际运行时会发生的问题。
生产者生成一定量数据放到缓冲区中,并重复此过程。与此同时,消费者从缓冲区消耗这些数据。要保证生产者不会在缓冲区满时加入数据,消费者也不会在缓冲区空时消耗数据。
解决该问题,须让生产者在缓冲区满时休眠,等到下次消费者消耗缓冲区数据的时候,生产者才能被唤醒,开始往缓冲区添加数据。同样,也可让消费者在缓冲区空时进入休眠,等到生产者往缓冲区添加数据之后,再唤醒消费者。
通常的方法解决该问题。
采用条件变量这种线程间同步方式,实现一个生产者-消费者模型,主程序分别启动生产者线程和消费者线程。
生产者线程不断顺序地将数字10~31写入共享缓冲区,同时消费者线程不断地从共享缓冲区读取数据。
缓冲区大小为6,进行多线程编程来完成该模型。
三、设计题目:基于C语言的模拟shell实现
设计内容:
编写三个不同的程序cmd1.c,cmd2.c,cmd3.c,分别编译成可执行文件cmd1、cmd2、cmd3,cmd1程序输出“Tip::cmd1进程正在运行.”,cmd2程序输出“Tip::cmd2进程正在运行.”,cmd3程序输出“Tip::cmd3进程正在运行.”。
编写模拟shell程序shell.c,模拟shell程序的功能:能根据用户输入的字符串(cmd1、cmd2或cmd3),创建子进程并让它用exec函数族去执行相应的cmd1、cmd2或cmd3程序;父进程则等待子进程结束,然后再接收下一条命令;依此循环。
如果接收到的字符串为exit,则父进程结束。
如果接收到的字符串是无效字符串,则显示“程序未找到”并继续等待。
四、设计题目:基于C语言的简单cp命令实现
设计内容:
实现简单的cp命令功能,在shell环境中能够实现文件的复制。
所实现cp命令的执行格式为:cp [option] src dest。
可不带参数。不带参数时,能复制单个普通文件;复制目录时,提示错误。
可带参数,并实现-r和-v两个参数功能:-r表示将源目录中的文件递归复制到目标目录,-v表示显示文件复制过程信息。
五、设计题目:基于C语言的简单shell设计
设计内容:
实现简单的shell解释器程序。
能读入外部程序或命令,支持参数传递。
命令行提示符为“$”符号。
当执行外部程序或命令时,为所执行的外部程序或命令创建子进程,并让该子进程执行相应的程序;而父进程则等待子进程结束。
所执行的程序或命令结束后,再次等键盘输入并执行,依此循环。
需要使用fork、execvp、wait等函数来实现。
六、设计题目:基于C语言的XOR文件加密设计
设计内容:
原理:对数据连续做两次XOR(异或运算),会得到数据本身。若原始信息为message,密钥为key,第一次 XOR运算会得到加密文本cipherText。对cipherText再用key做一次 XOR 运算,就会还原得到message,从而实现文本的加密和解密。
使用基本IO函数或标准IO函数,根据XOR加密原理,对普通的文本文件,实现文件的XOR加密。
若源程序为xor.c,编译生成的可执行程序为xor,则执行“./xor key 待加密文件名 加密文件名”即可实现对文件的加密,执行“./xor key 加密文件名 解密文件名”即可实现对文件的解密。
七、设计题目:基于Qt的简易计算器设计
设计内容:
使用C++编程语言,基于QT图像用户界面应用程序框架,实现简单的整数四则运算计算器,能够计算整数的加减乘除四则运算。
使用QPushButton控件实现整数和运算符按键,使用QLineEdit控件分别显示输入数据和计算结果。
使用信号和槽机制
文档评论(0)