实训9

 

项目名称

 

【苏嵌实训-嵌入式 linux C 第 9 天】

 

今日进度以及任务

对嵌入式linux多任务编程的学习;

计算机网络协议栈的了解;

Tcpipudpip的使用和区别;

三次握手;

 

 

 

本日任务完成情况

(详细说明本日任务是否按计划完成,开发的代码量)

当操作系统使用某种策略允许两个或多个进程并发共享一个cpu时,他称为多任务运行,或多道程序运行。

多任务可以分为三个级别:对话级、进程级、线程级。

 

对话级多任务:对话间的多任务有用户控制。可以由用户在界面、控制台等等  切换各个  应用程序。

 

进程级多任务:进程是运行着的程序,是操作系统执行任务的基本单位。进程具备文本、数据和堆栈片断,以及他自己的资源。资源可以是文件、对象句柄、设备、互斥量、管道,等等。每个进程有着独立的运行环境。进程和进程间是相互颗粒但有时相互联系的,一个进程运行出错不会影响到别的进程运行,两个进程之间可以通过管道等方式通信,或者通过信号哦量的工具同步运行。因此,进程是实现多任务处理的核心单元。

 

进程完成单独的任务,每个任务有可能有自己的控制流程。这些流程有轻量级的进程构成,简称线程。进程的线程并发执行称作线程级多任务。

 

多任务处理的特点

对话间的多任务是一个高级别的多任务,他受用户控制。进程间的多任务以及多线程在低级别上实现。有设计他的程序员控制。程序员创建进程,并决定每个进程的线程数 ,任务的优先级,以及什么时候挂起、什么时候终止。

多任务的目的是增加系统能完成的工作量,提高资源的利用率。多任务通过保持系统资源(处理、I/o等)的繁忙,并防止他们在系统同中处于非激活状态时使用资源,是的多个任务能共享系统资源。

。单向链表是一种线性表,实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它能知道下一个结点的存储位置。由N各节点(Node)组成单向链表,每一个Node记录本Node的数据及下一个Node。向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。

 

 

 

本日开发中出现的问题汇总

wait和waitpid函数间不容易区别

1、在一个子进程终止前,wait使其调用者阻塞,而waitpid有一选择项,可使调用者不阻塞

2、waitpid并不等待第一个终止的子进程——它有若干个选择项,可以控制它所等待的特定进程

3、wait函数是waitpid函数的一个特例

 

 

本日未解决问题

多任务就是多道程序运行,多任务编程中三个分类对话进程线程,原理差不多主要就是多方面独立又联系在一起。难点主要还是代码问题。

 

 

 

 

本日开发收获

对嵌入式linux中多任务编程有了深入的理解,对嵌入式linux的理解也更全面

 

 

其他

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值