
Linux 开发
文章平均质量分 95
以实战为线索,逐步深入Linx开发的各个环节,掌握常用知识,打造系统Linux学习工作流程,提高动手能力和思维能力
Refuel.CONG
一个不甘命运,正努力奋斗的CONG 向自己的偶像稚晖君学习,成为他一样的男人
展开
-
linux中级——libcurl库访问百度
libcurl简介:libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。libcurl的官网 、库下载。这种库使用的时候就像使用wiringPi库一样,编写完代码需要链接这个库,所以要先下载这个库。libcurl等第三方库的通用编译方法:首先进入原创 2022-05-16 15:37:50 · 1176 阅读 · 0 评论 -
OSI网络模型 + TCP三次握手、四次挥手 + Socket、TCP、HTTP三者之间的区别和原理
文章目录七层网络模型TCP/IP 协议基本概念TCP三次握手四次挥手常见面试题七层网络模型(简称OSI模型):OSI 模型(Open System Interconnection model)是一个由国际标准化组织提出的概念模型,试图供一个使各种不同的计算机和网络在世界范围内实现互联的标准框架。它将计算机网络体系结构划分为七层,每层都可以提供抽象良好的接口。了解 OSI 模型有助于理解实际上互联网络的工业标准——TCP/IP 协议。OSI 模型各层间关系和通讯时的数据流向如图所示:下面的图表试图原创 2022-05-13 10:04:19 · 1605 阅读 · 1 评论 -
Linux中级——“驱动” 控制硬件必须学会的底层知识
文章目录驱动认知1. 什么是驱动2. 各分态的详解3. 字符设备驱动工作原理基于框架编写驱动代码:通过我们上篇博文,内核的讲解,在看下面这个图就不难理解了。内核的讲解驱动认知1. 什么是驱动驱动就是对底层硬件设备的操作进行封装,并向上层提供函数接口。设备分类:linux系统将设备分为3类:字符设备、块设备、网络设备。字符设备:指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后顺序。字符设备是面向流的设备,常见的字符设备有鼠标、键盘、串口、控制台和LE原创 2022-04-22 16:46:16 · 3933 阅读 · 0 评论 -
Linux中级——“内核” 硬核的体系结构,衔接工作
linux内核结构框图:Unix和Linux系统内核都采用的都是如下图所示的结构,其中可以看到三个层次:硬件级、内核级和用户级。用户程序通过陷入完成由用户态到内核态的转换。系统调用作为用户级与内核级交互方式,分为2部分:与文件子系统的交互和与进程控制子系统的交互。文件子系统管理文件。包括:分配文件空间、管理空闲空间、控制对文件的存取以及为用户检索数据。进程控制子系统负责进程同步、进程间通信、进程调度和存储管理。其中用户应用程序由基础C和程序库组成,程序库提供应用程序支配内核干活的原创 2022-04-22 14:39:22 · 1197 阅读 · 0 评论 -
Linux基础 ——“文件系统” 走进一切皆文件的体系中(文件系统目录结构、磁盘分区、虚拟文件系统)
文件系统文件系统概念1、什么是文件系统?2、文件系统的种类3、什么是分区?文件系统目录结构1、什么是文件系统目录结构?2、一些指令3、/etc虚拟文件系统1、什么是虚拟文件系统?**2、虚拟文件系统作用:**文件系统概念1、什么是文件系统?常规认知就是根目录下那些文件,也可以这样笼统的讲,但具体来讲其实并不是那样。文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的原创 2022-04-22 11:55:56 · 2389 阅读 · 6 评论 -
ARM树莓派高级开发——linux内核源码、树莓派源码编译、SD卡挂载
文章目录linux内核开发基础(linux内核源码、树莓派源码编译、SD卡挂载)树莓派等芯片带操作系统的启动过程linux内核源码树Linux内核源代码目录树结构:树莓派Linux源码配置配置Linux内核适合树莓派相关操作:Linux内核编译linux内核开发基础(linux内核源码、树莓派源码编译、SD卡挂载)首先下载树莓派linux内核源码:下载网址:https://github.com/raspberrypi/linux在树莓派使用指令:uname -r查看当前树莓派的版本号,然后选择对应的原创 2022-04-20 16:49:57 · 2087 阅读 · 0 评论 -
linux&树莓派开发——“交叉编译&软硬链接“ 工作中必然用到的技术 实现不同主机间交互开发
交叉编译一、交叉编译概念二、为什么要交叉编译交叉编译的基本知识三、交叉编译工具链安装1. 临时有效(关闭窗口就无效了)2. 永久有效(多少个窗口都可以)四、交叉编译服务器客户端一、交叉编译概念交叉编译是一个行为 ,是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。我们vi test.c / gcc test.c 是编辑代码和编译代码,没有交叉编译:是一个平台上生成在该平台上可执行的代码交叉编译:是在一个平台上生成原创 2022-04-17 14:15:43 · 1495 阅读 · 0 评论 -
Linux基础—” Linux静态动态库及相关编程“ 面试必问的知识点你了解了嘛
文章目录一、Linux库引入之分文件编程分文件编程案例Linux库概念及相关编程(面试重点)一、Linux库引入之分文件编程分文件编程案例好处:分模块的编程思想例如分文件编程,分3块网络 a超声波b电机ca.功能责任划分b.方便调试c.主程序简洁我们先来写一个简单的程序#include <stdio.h>int add(int a,int b){ return a + b; }int chu(int a,int b) {原创 2022-04-13 16:54:10 · 892 阅读 · 0 评论 -
Linux基础 ——“网络编程” 了解客户和服务器之间的故事
了解服务器端和客户端之间的故事,轻松学会网络编程原创 2022-03-29 19:06:25 · 3703 阅读 · 0 评论 -
Linux基础 ——“线程” 进程线程谁才是最厉害的
一、线程概述典型的UNIX/Linux进程可以看成只有一个控制线程:一个进程在同一时刻只做一件事情。有了多个控制线程后,在程序设计时可以把进程设计成在同一时刻做不止一件事,每个线程各自处理独立的任务。进程是程序执行时的一个实例,是担当分配系统资源(CPU时间、内存等)的基本单位。在面向线程设计的系统中,进程本身不是基本运行单位,而是线程的容器。程序本身只是指令、数据及其组织形式的描述,进程才是程序(那些指令和数据)的真正运行实例。1. 线程与进程的区别线程是操作系统能够进行运算调度的最小单位。它被包原创 2022-03-28 13:19:05 · 714 阅读 · 0 评论 -
Linux基础 ——“进程间通信” 沟通是怎么连接的呢
文章目录进程间通信(IPC)篇一、进程间通信概述二、管道通信原理1. 管道(无名管道):2. 管道 编程的实战:三、FIFO (命名管道)1. 创建FIFO有名管道代码:2. 当open一个FIFO时,是否设置非阻塞标志(O_NONBLOCK)的区别?3. 命名管道的数据通信编程实现:进程间通信(IPC)篇一、进程间通信概述进程间通信是指在不同进程之间传播或交换信息,IPC的方式常有管道(包括无名管道和命名管道)消息队列,信号量,共享存储,Socket,Stream等。其中Socket和Stream支原创 2022-03-25 22:41:15 · 3003 阅读 · 8 评论 -
Linux基础 ——“进程” 原来一点也不复杂
文章目录Linux 进程篇一、进程相关概念1.什么是程序,什么是进程,两者之间的区别?2.如何查看系统中有哪些进程?3.什么是进程标识符?4.什么叫父进程,什么叫子进程?5.c程序的存储空间是如何分配的?Linux 进程篇一、进程相关概念了解进程的时候先来了解几个问题,明白以下问题,就懂了进程的概念1.什么是程序,什么是进程,两者之间的区别?程序是静态的概念,gcc xxx.c -o pro 磁盘中生成pro文件,叫做程序 程序如:电脑上的图标进程是程序的一次运行活原创 2022-03-22 23:50:04 · 2662 阅读 · 2 评论 -
Linux基础 ——’文件编程‘是怎么回事?
@[TOU]LINUX基础 ——文件篇原创 2022-03-18 21:15:41 · 1560 阅读 · 6 评论 -
Linux C基础——” Makefile “ 文件管理大师你拜访过嘛?
文章目录Make简介:Makefile基本结构:1. Makefile 基础的使用2. 创建和使用变量Make简介:工程管理器,顾名思义,是指管理较多的文件Make工程管理器也就是个“自动编译管理器”,这里的“自动”是指它能够根据文件时间戳自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件的内容来执行大量的编译工作Make将只编译改动的代码文件,而不用完全编译。Makefile基本结构:Makefile是Make读入的唯一配置文件由make工具创建的目标体(t原创 2022-04-07 11:57:33 · 2419 阅读 · 11 评论 -
Linux基础——“C语言高级编程” C语言中的细节你真的知道吗?
文章目录GCC简介GCC简介gcc 所支持后缀名解释.cc原始程序.C / .cc /.cxxC++原始程原创 2022-04-05 21:48:16 · 2357 阅读 · 4 评论 -
Linux基础——”shell脚本编程“ 你知道自动轰炸脚本怎么来的吗?
文章目录shell 编程一、变量1. shell脚本基础知识2.shell 编程的基本过程3. shell变量shell 编程一、变量1. shell脚本基础知识编译型语言:如 c语言解释型语言:shell 脚本shell脚本的本质:shell命令的有序集合。2.shell 编程的基本过程基本过程分为三步:建立shell文件:包含任意多行操作系统命令或shell命令的文本文件。——xx.sh赋予shell文件执行权限,用chmod命令修改权限。执行shell文件,直接在命令行上调用s原创 2022-04-04 17:17:03 · 1583 阅读 · 0 评论 -
Linux基础——“ shell命令 概述”了解shell和基本linux
shell 简介英文单词shell直译为“贝壳”。贝壳是动物作为外在保护的一种工具。可以这样认为。Linux中的shell就是Linux内核的一个外层保护工具,并负责完成用户与内核之间的交互。命令是用户向系统内核发出控制请求,与之交互的文本流shell 是一个命令行解释器,讲用户命令解析为操作系统所能理解的指令,实现用户与操作系统的交互。当需要重复执行若干命令,可以将这些命令集合起来,加入一定的控制语句,编辑成shell脚本文件,交给shell批量执行。用户在命令行提示符下键入命令文本,开始原创 2022-04-04 15:08:35 · 3392 阅读 · 0 评论 -
快速入门:LINUX基础 ——教你使用 linux 操作
文章目录一、LINUX介绍二、环境搭建三、如何在LINUX下做开发1.LINUX 中—vi的使用一、LINUX介绍Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性原创 2022-03-18 00:27:30 · 1129 阅读 · 0 评论