- 博客(11)
- 收藏
- 关注

原创 动态库学习
总结一:动态库前言 我们知道程序编译链接经常使用动态,同时我们可能还知道,动态库时程序运行时加载的。但是动态库到底有什么作用,如何生成、如何加载等,我们却很少关注。接下来,我给大家做一个简单的介绍。1.1 动态库和静态库的区别静态库特点(linux):命名上是以 *.o 结尾静态库在链接阶段直接就加入到可执行的文件中了,在执行过程中无需该静态库相对于动态库生成的文件,使用静态库生...
2020-02-26 16:54:48
6380

原创 makefile
Makefile1.1背景在window上我们一般不用管源代码是如何生成可执行程序,从源代码到可执行程序的中间过程,一般有编译器帮你处理。也就是我们熟知的IDE(Integrated Development Envirment)。但是在linux上,这所有的一切都由我们自己处理。我们在linux上写完程序,一般使用gcc 或者 g++ 进行编译,生成 a.out可执行文件。但是有个问题,如果...
2019-11-24 20:02:43
323
原创 raspberryPlatformDriver
fsdrv.c#include <linux/init.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/fs.h>#include <linux/cdev.h>#include <linux/slab.h>#include <linux/ioctl.h>#include <linux/uaccess.h>
2021-05-27 08:45:02
143
原创 raspberry 3B LED驱动
```c#include <linux/init.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/fs.h>#include <linux/cdev.h>#include<linux/ioctl.h>#include <linux/uaccess.h>#include<linux/io.h>#incl.
2021-02-04 09:05:06
141
原创 2020-12-23
从接触linux 驱动后发现其对新手极其不友好,很少有基于理论和实践为一体的书,不适合我这种菜鸡。本人也是刚刚进入驱动行业,想通过一个菜鸡的视角来给对驱动感兴趣的人提供一些帮助。基本命令 加载模块 insmod <name>.ko modprobe <name> 加载模块时自动加载依赖的模块 卸载模块 rmmod <name> 查看 dmesg 查看kernel的log 第一个驱动代码<span style="..
2020-12-23 22:43:42
113
原创 ext文件系统
Ext文件系统1.1 ext 概述目前Linux主流的文件系统是ext4,但是事物的发展是有一个过程的。开始的ext1主要的限制是可以管理的空间为2GB。到ext2时可以管理GB和TB级别的磁盘,而且结构有了本质的变化,目前来说还是比较优秀的。但是有个致命的缺点,就是机器断电后容易发生比较严重的数据损坏,同时长时间使用会使文件存放在磁盘的多个地方,性能下降。所以在ext3文件系统中引入日志系统,将数据和元数据写入磁盘前先写入日志,这样保证文件和整个文件系统的一致性,但性能也降低了,ext3使用32位
2020-07-30 08:18:51
1799
原创 Linux常用命令
Linux 常用命令1 查看系统支持的shell种类xiaoxiong@xiaoxiong:~$ cat /etc/shells # /etc/shells: valid login shells/bin/sh/bin/bash/bin/rbash/bin/dash2 linux 系统目录目录作用/bin存放的可执行的bin文件, 如 ls,cat,mkdir/etc存放系统管理和配置文件/usr存放系统运用程序/usr/bin众多的运用程
2020-07-29 08:55:22
172
转载 C++ 中的static_cast, reinterpret_cast的用法和区别
原文地址:https://www.cnblogs.com/heyonggang/p/3361643.html用法:static_cast < type-id > ( expression )该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的...
2020-02-23 16:13:00
582
原创 Git
一、linux 安装git# 安装远程中端sshsudo apt-get install ssh# 安装gitsudo apt-get install git二、创建本地仓库cd ~mkdir gitcd ./git#初始化git 仓库git init#确认git仓库啊是否建立, 执行如下命令,如果有.git 存在说明已经创建完毕ls -al 三、clo...
2020-02-22 12:53:50
120
原创 HTTPS
HTTPS1.1 HTTPS握手图[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jotZTyn2-1574496457026)(./6.png)] [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZAKH4ish-1574496457031)(./7.png)]1.2 HTTPS握手细节1.2.1 ClientHell...
2020-01-29 23:19:12
2054
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人