实验二固件设计报告
2015-11-19 12:30
316 查看
北京电子科技学院(BESTI)
实 验 报 告
课程:深入理解计算机系统 班级: 1352
姓名:莫凡 潘俊洋
学号:20135225 20135230
成绩: 指导教师:娄嘉鹏 实验日期:2015/11/17
实验密级: 预习程度: 实验时间:3:30~6:00
仪器组次: 必修/选修:必修 实验序号:2
实验名称: 固件设计
实验目的:
1.掌握程序的烧写方法;
2.能够实现Bootloader;
3.实现密码学中常见算法的固化。
实验仪器:
实验内容、步骤与体会:
实验内容:
1.开发环境的配置同实验一。
2.将实验代码拷贝到共享文件夹中。
3.在虚拟机中编译代码。
对于多线程相关的代码,编译时需要加-lpthread 的库。
4.下载调试
在超级终端中运行可执行文件pthread,运行可执行文件term。
线程相关函数
线程创建函数:
获得父进程 ID:
测试两个线程号是否相同:
线程退出:
等待指定的线程结束:
互斥量初始化:
销毁互斥量:
再试一次获得对互斥量的锁定(非阻塞) :
锁定互斥量(阻塞) :
解锁互斥量:
条件变量初始化:
销毁条件变量 COND:
唤醒线程等待条件变量:
等待条件变量(阻塞) :
在指定的时间到达前等待条件变量:
遇到的问题及解决方法:
1.执行./term 时出错
在 Linux 下串口文件位于/dev 下,一般在老版本的内核中串口一为/dev/ttyS0 ,串口二为 /dev/ttyS1,
在我们的开发板中串口设备位于/dev/tts/下, 因为开发板中没有ttyS0这个设备, 所以我们要建立一个连接。
首先在超级终端中进入/dev文件夹中。输入命令“ln –sf /dev/tts/0 /dev/ttyS0”
注意:输入指令时中间的空格以及区分大小写
实 验 报 告
课程:深入理解计算机系统 班级: 1352
姓名:莫凡 潘俊洋
学号:20135225 20135230
成绩: 指导教师:娄嘉鹏 实验日期:2015/11/17
实验密级: 预习程度: 实验时间:3:30~6:00
仪器组次: 必修/选修:必修 实验序号:2
实验名称: 固件设计
实验目的:
1.掌握程序的烧写方法;
2.能够实现Bootloader;
3.实现密码学中常见算法的固化。
实验仪器:
名称 | 型号 | 数量 |
实验箱 | UP-NETARM2410嵌入式 | 1 |
PC | WinXP | 1 |
实验内容:
1.开发环境的配置同实验一。
2.将实验代码拷贝到共享文件夹中。
3.在虚拟机中编译代码。
对于多线程相关的代码,编译时需要加-lpthread 的库。
4.下载调试
在超级终端中运行可执行文件pthread,运行可执行文件term。
线程相关函数
线程创建函数:
int pthread_create (pthread_t * thread_id, __const pthread_attr_t * __attr,void *(*__start_routine) (void *),void *__restrict __arg)
获得父进程 ID:
pthread_t pthread_self (void)
测试两个线程号是否相同:
int pthread_equal (pthread_t __thread1, pthread_t __thread2)
线程退出:
void pthread_exit (void *__retval)
等待指定的线程结束:
int pthread_join (pthread_t __th, void **__thread_return)
互斥量初始化:
pthread_mutex_init (pthread_mutex_t *,__const pthread_mutexattr_t *)
销毁互斥量:
int pthread_mutex_destroy (pthread_mutex_t *__mutex)
再试一次获得对互斥量的锁定(非阻塞) :
int pthread_mutex_trylock (pthread_mutex_t *__mutex)
锁定互斥量(阻塞) :
int pthread_mutex_lock (pthread_mutex_t *__mutex)
解锁互斥量:
int pthread_mutex_unlock (pthread_mutex_t *__mutex)
条件变量初始化:
int pthread_cond_init (pthread_cond_t *__restrict __cond,__const pthread_condattr_t *__restrict __cond_attr)
销毁条件变量 COND:
int pthread_cond_destroy (pthread_cond_t *__cond)
唤醒线程等待条件变量:
int pthread_cond_signal (pthread_cond_t *__cond)
等待条件变量(阻塞) :
int pthread_cond_wait (pthread_cond_t *__restrict __cond, pthread_mutex_t *__restrict __mutex)
在指定的时间到达前等待条件变量:
int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,pthread_mutex_t *__restrict __mutex, __const struct timespec *__restrict __abstime)
遇到的问题及解决方法:
1.执行./term 时出错
在 Linux 下串口文件位于/dev 下,一般在老版本的内核中串口一为/dev/ttyS0 ,串口二为 /dev/ttyS1,
在我们的开发板中串口设备位于/dev/tts/下, 因为开发板中没有ttyS0这个设备, 所以我们要建立一个连接。
首先在超级终端中进入/dev文件夹中。输入命令“ln –sf /dev/tts/0 /dev/ttyS0”
注意:输入指令时中间的空格以及区分大小写
相关文章推荐
- 回归
- Hadoop安装简单版本
- 数据挖掘与机器学习的区别
- CodeForces 540B School Marks
- Luc Berson's letter
- java编程实现根据EXCEL列名求其索引的方法
- 移动端6种导航设计总结
- C# 设计模式----抽象工厂模式
- Merge Sorted Array
- C# 设计模式----抽象工厂模式
- 深入理解dispatch_queue
- lvs+keepalived
- Javascript跨域请求的几种解决方法
- 自定义标签
- 多线程断点下载
- CRS 诊断数据收集:常见工具及其用法摘要 (Doc ID 1526158.1)
- 深入浅出Mybatis-分页
- latex中同一处引用多篇文献
- LightOJ 1325 Distributing Chocolates
- SQL Server 2014 使用(持续更新中···)【目录】