Linux-韦东山
文章平均质量分 64
Embedded learner
2021年本科毕业,我会分享一些我在学习和工作中接触到的一些嵌入式经历以及个人成长经历,文章写的比较粗糙我会不断完善,文章有不当之处,希望大家不吝赐教。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
linux应用开发基础9-多线程编程
9.1、为什么要用多线程编程?本文参考韦东山老师的视频(【第4篇】嵌入式Linux应用开发基础知识_哔哩哔哩_bilibili),我们使用视频学习,1是快,2是可以深入的解决某些难点。假定我们有一个英语播放器,需要实现按键按下音乐暂停和正常播放音乐,第一种情况单纯使用while(1)循环两个任务,一个任务检测按键,另一个任务播放音乐,那么在播放音乐的时候就无法监测到按键按下,看起来就是反应迟钝。第二种情况使用多进程编程,可以理解为有多个main函数,那么就可以有两个main函数,分别处理这两原创 2022-05-02 20:44:45 · 651 阅读 · 0 评论 -
linux应用开发基础8-网络通信
8.1 网络通信概述在一般的网络书籍中,网络协议被分为5层,如下图所示:应用层:它是体系结构中的最高层,直接为用户的应用进程(例如电子邮件、文件传输和终端仿真)提供服务。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议,DNS,SNMP等等。运输层:负责向两个主机中进程之间的通信提供服务。运输层主要使用以下两种协议:(1) 传输控制协议TCP(Transmission Control Protocol):面向连接的,数据原创 2022-04-29 22:46:43 · 1178 阅读 · 0 评论 -
Linux应用开发基础7-输入系统应用编程
输入系统框架及调试Linux系统为了统一管理输入设备,实现了一套能兼容所有输入设备的框架:输入系统。驱动开发人员基于这套框架开发出程序,应用开发人员就可以使用统一的API去使用设备。我们需要了解api的使用,内核中输入子系统的框架、数据流程,来解决开发工程中碰到的硬件问题、驱动问题。输入系统框架如:驱动程序上报的数据含义有三项重要内容:type:哪类?比如EV_KEY,按键类code:哪个?比如KEY_Avalue:值,比如0-松开,1按下,2长按如果我们想表示触摸屏上面一个触点.原创 2022-04-29 16:17:56 · 1103 阅读 · 0 评论 -
linux应用开发基础6-文字显示
一、字符的编码方式我们在显示字体时,需要关注两方面的内容,一显示我们要什么字符,二这些字符是要显示什么格式原创 2022-03-18 11:40:30 · 1866 阅读 · 0 评论 -
linux应用开发基础4-文件I/O
本篇知识属于linux系统编程相关知识。如果从事linux应用的人,推荐两本书----1、linux/UNIX系统编程手册----这本书适合初学者。2、UNIX环境高级编程第3版---这本书适合当字典。在linux系统中,一切都是“文件”:普通文件、驱动程序、网络通信等等。所有的操作都是通过文件IO来操作的,所以,我们要掌握文件操作的常用接口。上层的应用程序开发人员不需要关心驱动层的程序或者是硬件的逻辑,只需要专注于业务。驱动程序的开发人员需要提供标准的函数接口给应用层的人员使用。这些文原创 2022-03-11 15:10:44 · 737 阅读 · 0 评论 -
linux应用开发基础2-gcc编译器使用
gcc编译器使用c程序要经过预处理,编译,汇编,链接才能变成可执行文件。图1把.h文件和.c文件合并成一个文件叫预处理,预处理就是找到头文件,展开宏;预处理之后的文件变成汇编码叫编译,对于语法错误是在编译过程中发现的;汇编码变成机器码叫汇编,机器码变成汇编码叫反汇编;多个机器码文件以及一些补充文件变成app就是链接。通过命令gcc -o hello hello.c -v 我们就可以查看到具体的编译过程。gcc这命令帮我们把这些过程全部做掉了。gcc -E -o hell原创 2022-03-11 10:47:33 · 494 阅读 · 0 评论 -
Linux应用开发基础1-交叉编译hello程序
hello程序#include <stdio.h>int main(int argc, char **argv){ if (argc >= 2) printf("Hello, %s!\n", argv[1]); else printf("Hello, world!\n"); return 0;}原创 2022-03-10 14:37:39 · 549 阅读 · 0 评论 -
linux-1-单片机程序对比Linux程序
linux-1-单片机程序对比Linux程序单片机在单片机的程序里面可以直接读写寄存器。驱动层和app层分层没有明显的界限,只是一个人为分层的结果。单片机中的cpu可以根据一个地址直接访问到外设(gpio)或者是存储单位(RAM)上面。Linuxcpu根据一个地址去访问gpio,但是内存管理单元mmu会判断cpu处于什么模式下面,如果是处于用户模式,mmu会禁止cpu去访问gpio,如果是管理者模式,就可以去访问gpio。Linux系统在app层里面无法直接读写寄存器,在app下面调用驱动程序原创 2022-03-01 20:30:59 · 947 阅读 · 0 评论
分享