全志H616开发学习笔记(一):全志H616课程概述 全志H616课程概述本讲起开始嵌入式软件学习的新阶段——全志H616学习。 这一阶段的学习,重点并不是基于芯片学习各种外设驱动、时序逻辑以及内核移植,这样学习难度非常高,对于入门的新手至少要准备一年的时间。这一阶段的学习,目标仍然是Linux系统,平台为ARM架构,开发板采用香橙派Zero2。同一个协议,涉及的算法在不同平台上因因硬件不同造成的细微差异,具体实现是中高级工程师负责的内容。初级工程师 2022-11-20 嵌入式开发 #Linux #嵌入式 #全志H616 #Orangepi
Linux系统编程之网络编程篇 网络编程概述前面一章学习了进程间通信,进程间通信的方法包括管道、消息队列、共享内存、信号及信号量等,这些方式都有一个特点,那就是依赖于Linux内核。也就是说,这些进程间的通信手段仅适用于本机通讯,无法实现多机通信。 如果要实现多机之间的通信,就需要使用网络通信。不同主机以主机的网络地址为依据进行主机间的通讯。一台主机的网络地址由两部分组成:IP地址+端口号。由于一台主机可能运行多个服务,端口号的 2022-09-29 技术 #Linux编程
Linux系统编程之线程篇 以下内容参考自《Linux线程介绍》,作者峰子_仰望阳光 线程概述——与进程的区别、优势 “进程——资源分配的最小单位,线程——程序执行的最小单位” 典型的Unix进程可看成只有一个控制线程,同一时刻一个进程只做一件事。当有了多个控制线程之后,就可以设计并发处理程序了,每个线程各自处理独立任务 首先来看进程和线程有什么不同: 进程是程序一次执行的实例,是系统资源(CPU、内存、网络等)分配的基 2022-09-22 Linux编程 #编程 #Linux #线程
Linux系统编程之进程篇 几个入门问题 什么是程序,进程又是什么 简单地来说,程序是静态文件的概念,比如gcc demo.c -o demo,这条命令将在当前目录下生成demo文件,可以被执行,叫做程序。 进程就是程序的一次运行活动,通俗点讲就是程序运行起来了,系统中就多了一个进程 怎么查看系统中的进程 使用ps命令可以查看当前进程:ps -aux将打印出当前所有运行中进程,配以grep表达式能更快找到目标进程 2022-09-18 Linux编程 #Linux #进程
Linux系统编程——文件篇 应用为王文件编程,要深究到背后的理论原理,内容就太多了,至少包括: 文件系统原理、 文件访问机制、 文件在内核中的管理机制、 文件信息节点inode 文件共享 文件权限,以及权限的修改 ……但在实际应用中,比如帐单打印、游戏进度保存、配置文件存储等,我们更关心的是内容和正确无误地创建、保存、修改这些文件,而不是操作系统具体是怎么操作这些文件的。 此教程以应用为主,更加关心如何用代码操作文件,实 2022-09-15 Linux编程 #Linux #文件编程
Linux系统编程之进程通信篇 引入——为什么需要进程间通信再前面的进程章节中,我们除了可以让子进程在退出时返回一个状态码,没有别的办法获取子进程在运行过程中的状态和数据,反过来子进程也无法得知父进程的状态。 在实际的编程实践中,这些信息实际又是非常重要的,缺少了我们要想控制子进程的运行就很困难。 在Linux环境下,进程通信主要有这么几种类型:管道(无名与命名)、消息队列、共享内存、信号及信号量、Socket、Stream。其 2022-09-08 Linux编程 #编程 #Linux #进程通信