姓名:刘亚洲 学号:19020100170 学院:电子工程学院
转自:
https://blog.csdn.net/liupeng19970119/article/details/80375642
【嵌牛导读】本文介绍了嵌入式linux的应用层相关知识
【嵌牛鼻子】嵌入式开发
【嵌牛提问】我们嵌入式linux应用层是否需要掌握多种语言?
【嵌牛正文】
linux应用层知识:
1.熟悉linux的基本命令,掌握shell脚本操作一系列linux基本命令的语法。这些内容是最基本所需要掌握的知识
2.熟悉C语言
3.熟悉vi编译器的基本操作
4.使用GCC编译器,进行编译。
5.使用GDB调试程序(我不会。。)
6.linux下C的和基本操作:字符串操作,内存申请,时间获取等。
7.对文件系统的操作:文件的打开关闭,创建,搜索,状态获取。
8.针对文件指针的非格式化输入输出(fgetc(),fputc()),格式化输入输出(sprintf,fscanf)操作。
9.进程操作:
进程概念:操作系统中被加载到内存中的,正在运行的应用程序,由程序,数据,进程控制块(PID等)组成。
进程状态:运行态,就绪态,阻塞态(请求IO或者等待某一事件触发的进程)
进程的创建:一般我们执行的程序就是一个进程,我们可以使用fork()的创建一个该进程的子进程,这个进程复制了父进程的数据。pid_fork(void);
进程终止:return ,exit()等
守护进程:为了维护系统的运行二创建的一些进程,父进程都是init的子进程,都是后台运行,如果将普通的进程修改为守护进程需要按照守护进程的特性进行改造。
10.进程间通信:
进程间通信的作用:不同进程之间进程数据信息的交换,完成某种特定的功能。主要的方法有:管道,信号,消息队列,信号量和共享内存,这里简单介绍一下常用的几个。
消息队列:将数据放入消息队列,另外一个进程通过对应接口函数进行调用,获取键值对应的消息队列。
信号量:本身不进行数据的交换,主要是控制多个进程对共享资源的访问。
共享内存:多个进程将同一块内存区域映射到自己的进程空间,以此完成通信,他是进程间通信最快的一种方式。
11.多线程编程:
概念:据说在在嵌入式领域中应用很广泛,因为资源的问题。实际上现在嵌入式领域和传统计算机领域界限已经很模糊了,很多时候硬件上资源不是那额需要节省。这里先略过,后面学习的时候再深入学习一下。
12.网络编程:
TCP/IP协议栈:网络接口层(数据帧),网络层(IP协议),传输层(TCP/IP协议),应用层(FTP等)。
套接字基础:socket套接字是封装传输层协议的操作单元,让网络编程更加容易。
服务器模型:循环服务器模型(while结构,一次只能处理一个客户端请求),并发服务器(fork实现,创建子进程实现)
域名系统:DNS,将难以直接记忆的IP地址和端口进行人性化的域名变换。
13.GUI设计
本文为CSDN博主「今天又是充满希望的一天」的原创文章,遵循CC 4.0 BY-SA版权协议。
原文链接:https://blog.csdn.net/liupeng19970119/article/details/80375642