苏嵌实训第七天日报表

                项目开发日报表
项目名称【苏嵌实训-嵌入式 linux C 第七天】
今日进度以及任务学习了嵌入式Linux C编程的文件编程和多任务编程(进程、线程)
本日任务完成情况完成了老师上课布置的任务
本日开发中出现的问题汇总
本日未解决问题
本日开发收获初步了解了文件编程和线程的实现
其他

笔记

嵌入式C编程:语法、使用
嵌入式Linux C编程:在Linux上使用C语言调用操作系统功能接口开发应用程序;

嵌入式为什么要移植操作系统?
1、提供软件的移植性;
2、操作系统提供了多任务操作;
3、操作系统提供了丰富的网络协议栈;
4、操作系统将所有设备抽象成文件,方便访问设备;

嵌入式Linux C编程:文件编程、多任务编程(进程、线程)、网络编程
1、Linux系统构成/划分;用户空间、内核空间
<为什么将系统划分为用户空间、内核空间?> 保护内核的安全;
<用户该如何访问内核空间?> 通过系统调用
内核提供安全的访问内核的数据及服务的接口:系统调用
<用户如何发生系统调用?> 调用系统提供的编程函数接口–API(用户编程接口)

【文件编程】
1、文件描述符 ->(文件id)-> unsighed int;
<知道一个文件描述符、操作这个文件描述符,相当于再操作这个文件>
<文件描述符的分配方式:动态分配(只有当你操作这个文件、系统才会给你分配文件描述符,使用完毕之后回收)>
<0,1,2这三个文件描述符已经被系统占用,有特殊作用,所以说系统的普通文件id是从3开始的>
2、文件API(记头文件、记函数原型(形参和返回值的作用)、写测试、应用)
creat\open\read\write\seek\close

【嵌入式Linux多任务编程】
1、什么是多任务?
单任务:在一个任务执行期间,其他任务不能被调度;
多任务:
<当前CPU单核,存在任务并发,不存在并行>
<当前CPU是多核,即存在并法,也存在并行>
2、实现多任务的方式:进程、线程
进程(fork):实现多任务的开销比较大,因为每个进程都有4G的独立空间,导致进程间通信效率不高,优点:安全
线程:实现多任务的开销小,因为每个线程共享地址空间,通信效率高,缺点:不安全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值