- 博客(46)
- 资源 (17)
- 收藏
- 关注
转载 Linux GCC编译过程及生成静态链接库和动态链接库
一 gcc编译过程我们知道gcc是一个强大的编译器,很多Linux下的GNU工具都是用C语言写的,并且用gcc编译的,那么gcc的编译过程是怎样的呢,先来看一个总的流程图,我自己简单画的,凑合着看1首先是源文件经过预加载变成了.i结尾的文件,可以通过-E这个参数来生成这个中间文件,这里主要是把一些include的头文件和一些宏定义,放到源文件中。2从预加载的文件经过编译就会变成汇编语言的文件,这一步可以通过-S这个参数来生成这个中间文件3从汇编语言的文件通过汇编,就会变成目标代码.o的文件...
2021-04-28 11:28:06
1882
转载 kill与signal
kill号令用于终止指定的过程(terminate a process),是Unix/Linux下过程经管的常用号令。凡是,我们在须要终止某个或某些过程时,先应用ps/pidof/pstree/top等对象获取过程PID,然后应用kill号令来杀掉该过程。kill号令的别的一个用处就是向指定的过程或过程组发送旌旗灯号(The command kill sends the specified signal to the specified process or process group),或者断定过程号为.
2021-04-15 18:22:40
1001
转载 【Linux常用命令】Linux进程查询与结束: kill, killall
kill + PIDkill -9 + PID 加上-9 是强制终止的信号killall 是直接加进程名(但是进程名一定要完整) 就能杀掉这些进程一、进程查询方法1) 查看进程的方法:ps -ef 或者 ps auxroot 15087 0.0 0.0 0 0 ? S 23:31 0:00 [kworker/1:1]root 15219 0.0 0.0 0 0 ? S ...
2021-04-15 17:23:45
969
转载 色彩滤波阵列(Color Filter Array)
概述↵色彩滤波阵列,英文名Color Filter Array或Color Filter Mosaic,简称CFA或CFM,是像素传感器上方的一层马赛克覆层,用于采集图像的色彩信息。一般的光电传感器只能感应光的强度,不能区分光的波长(色彩),因此图像传感器需要通过色彩滤波(Color Filter)以获取像素点的色彩信息。Color Filter 根据波长对光线进行滤波,特定的 Color Filter 只允许特定波长的光通过。例如,最常见的Bayer Filter,又称RG...
2021-04-06 18:25:34
2312
转载 Python 删除只读文件/文件夹【报错】
1、创建文件夹:os.makedirs(path)和os.mkdir(path)的区别在于:第一个会创建多级文件夹目录而后面只会创建一级的目录这个比较抽象,但意思就是说,如果你所写的文件路径从某个文件夹下开始,就没有相对应的文件夹了。那么,用第一个makedirs()就会全部都创建出来。但是用第二个就是报错。因为第二个只会创建一级文件夹。2、删除文件:os.unlink(path)。这个要指向特定的文件。如果是文件夹,就会报错。主要用途是删除文件。================
2021-04-01 17:00:44
1965
转载 find -print0和xargs -0解释及用法
平常我们经常把find和xargs搭配使用,例如:find . -name "*.txt" | xargs rm但是这个命令如果遇到文件名里有空格或者换行符,就会出错。因为xargs识别字符段的标识是空格或者换行符,所以如果一个文件名里有空格或者换行符,xargs就会把它识别成两个字符串,自然就出错了。这时候就需要-print0和-0了。**find -print0表示在find的每一个结果之后加一个NULL字符,而不是默认加一个换行符。**find的默认在每一个结果后加一个’\n’,所以
2021-04-01 16:49:46
1594
转载 Linux内核中双向链表 list_head及其所属宿主的引用
做内核驱动开发经常会使用linux内核最经典的双向链表 list_head, 以及它的拓展接口(或者宏定义): list_add , list_add_tail, list_del , list_entry ,list_for_each , list_for_each_entry ...... 每次看到这些接口,感觉都很像,今天专门研究了一下内核,对它们做一些总结,希望为后续开发提供方便。首先找到list_head 结构体定义,kernel/inclue/linux/types....
2020-09-09 20:02:28
250
转载 基于分布式服务的SOA的项目一般实现流程
互联网项目架构之基于服务的分布式架构 随着互联网电商项目的发展,越来越多的购物平台等都使用SOA分布式来作为系统主要架构。为什么有那么多的电商项目都选择SOA作为系统架构呢?这肯定是存在一定原因的,因为电商行业的项目它大概存在以下特点:分布式、高并发、高可用、集群、负载均衡、海量数据、系统安全等一系列问题都需要解决,那么我所了解的SOA分布式架构它正好基本能很好的解决这些问题。 首先我给大家介绍以下电商项目中一些常见的运营模式: 今天我就以近期开发过的一个电商项目为例,来分享一点我
2020-08-27 16:45:22
757
转载 分布式架构的由来与SOA
分布式系统 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递和协调的系统。 简单来说,就是一群独立计算机集合共同对外提供服务,但是对于系统用户来说,就像是一台计算机在提供服务一样。分布式意味着可以采用更多的普通计算机组成分布式集群对外提供服务,计算机越多,CPU、内存、存储资源等也就越多,能够处理的并发访问量也就越大。 传统架构→分布式 ...
2020-08-27 16:26:38
442
转载 基于SOA的高并发和高可用分布式系统架构和组件详解
基于SOA的分布式高可用架构和微服务架构,是时下如日中天的互联网企业级系统开发架构选择方案。在核心思想上,两者都主张对系统的横向细分和扩展,按不同的业务功能模块来对系统进行分割并且使用一定的手段实现服务之间的通信,并且基于弹性云服务搭建高可用的分布式解决方案。但它们之间的区别可能比相似的地方要多,特别是体现在对服务的使用和与云服务的深度结合上。在具体实践中,微服务的架构也可以与其它互联网中间件组合在一起,组成规模更为庞大的SOA分布式系统。本文主要对一个典型的SOA分布式应用的架构和组件做详细的说明。
2020-08-27 16:21:48
575
转载 浅谈标准I/O缓冲区
标准I/O库提供缓冲的目的是尽可能地减少使用read和write调用的次数。它也对每个I/O流自动地进行缓冲管理,从而避免了应用程序需要考虑这一点所带来的麻烦。不幸的是,标准I/O库最令人迷惑的也是它的缓冲。标准I/O提供了三种类型的缓冲:1、全缓冲:在填满标准I/O缓冲区后才进行实际I/O操作。常规文件(如普通文本文件)通常是全缓冲的。2、行缓冲:当在输入和输出中遇到换行符时,标准I/O库执行I/O操作。这允许我们一次输出一个字符,但只有在写了一行之后才进行实际I/O操作。标准输.
2020-08-04 11:15:58
1298
转载 make -C $(LINUX_KERNEL_PATH) M=$(PWD) modules
原创连接:http://tscsh.blog.163.com/blog/static/2003201032013151544087/新的内核模块编程中的make命令里有个M选项,如下:make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modulesM=$(PWD) 意思是返回到当前目录继续读入、执行当前的Makefile。请参考:从 2.4 到 2.6:Linux 内核可装载模块机制的改变对设备驱动的影响这个M是kbuild的东西呢..
2020-07-28 16:11:24
2198
转载 linux IO多复用3/3:epoll详解
IO多路复用:epoll总结1、基本知识 epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。2、epoll接口 epoll操作过程需要三个接口,分别如下:#include <sys/epoll.h>int epoll_create(i
2020-07-24 17:21:35
147
转载 linux IO多复用2/3:poll详解
IO多路复用:poll1、基本知识 poll的机制与select类似,与select在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是poll没有最大文件描述符数量的限制。poll和select同样存在一个缺点就是,包含大量文件描述符的数组被整体复制于用户态和内核的地址空间之间,而不论这些文件描述符是否就绪,它的开销随着文件描述符数量的增加而线性增大。2、poll函数 函数格式如下所示:# include <poll.h>int poll
2020-07-24 17:18:41
139
转载 linux IO多复用1/3:select函数详解
linux select函数详解在Linux中,我们可以使用select函数实现I/O端口的复用,传递给select函数的参数会告诉内核: •我们所关心的文件描述符 •对每个描述符,我们所关心的状态。(我们是要想从一个文件描述符中读或者写,还是关注一个描述符中是否出现异常) •我们要等待多长时间。(我们可以等待无限长的时间,等待固定的一段时间,或者根本就不等待)从select函数返回后,内核告诉我们一下信息: •对我们的要...
2020-07-24 15:51:48
453
转载 sed与正则表达式
sed -i命令详解sed入门详解教程sed 是一个比较古老的,功能十分强大的用于文本处理的流编辑器,加上正则表达式的支持,可以进行大量的复杂的文本编辑操作。sed 本身是一个非常复杂的工具,有专门的书籍讲解 sed 的具体用法,但是个人觉得没有必要去学习它的每个细节,那样没有特别大的实际意义。网上也有很多关于 sed 的教程,我也是抱着学习的心态来学习 sed 的常见的用法,并进行系统的总结,内容基本覆盖了 sed 的大部分的知识点。文中的内容比较简练,加以实际示例来帮助去理解 sed 的使用...
2020-07-10 15:45:54
6493
转载 Linux如何查找处理文件名后包含空格的文件
Linux如何查找处理文件名后包含空格的文件当Linux下文件名中出现空格这类特殊情况话,如何查找或确认那些文件名后有空格呢? 又怎么批量替换处理掉这些空格呢?方法1: 输入文件名后使用Tab键,如果使用Tab键后面出现\ \ \这样的可见字符,那么该文件名包含空格。当然,这个方法弊端很大,例如,效率低下,不能批量查找,只有当你怀疑某个文件名后有空格,这个方法才比较凑效。另外,不能查找文件中间包含空格的文件名。如下测试所示:[root@DB-Server k...
2020-07-08 19:07:32
1941
转载 Makefile 自动变量&字符替换
Makefile 自动变量&字符替换转自:https://www.cnblogs.com/w-smile/p/12513055.html一、自动变量:$*:不包括后缀名的当前依赖文件的名称这个变量表示目标模式中"%"及其之前的部分。如果目标是"dir/a.foo.b",并且目标的模式是"a.%.b",那么,"$*"的值就是"dir/a.foo"。这个变量对于构造有关联的文件名是比较有较。如果目标中没有模式的定义,那么"$*"也就不能被推导出,但是,如果目标文件的后缀是make所识别的
2020-06-30 09:34:23
890
转载 python中的import、from import以及import as的区别
首先介绍一下import和include的区别或者说import相对include的好处:import导入的内容只会被包含一次,在引入之前会检测是否已经存在该模块,不存在才会被引入,而include是不会做判断的。使用import在递归包含的时候不会出错,不会引起交叉编译的问题。此外,使用include引入头文件对其引入顺序也有一定的要求。importimport是python提供的用于导入模块的机制,导入是的整个模块的内容。模块可以是py、pyc、pyd,可以是系统自带的,也可以是自定义的。
2020-05-15 12:04:59
562
原创 python 文件/文件夹/目录操作
————————————————A.Python文件、文件夹的移动、复制、删除、重命名#文件、文件夹的移动、复制、删除、重命名#导入shutil模块和os模块import shutil,os#复制单个文件shutil.copy("C:\\a\\1.txt","C:\\b")#复制并重命名新文件shutil.copy("C:\\a\\2.txt","C:\\b\\121.txt")#复制整个目录(备份)shutil.copytree("C:\\a","C:\\b\\new_a")
2020-05-15 11:36:55
1212
转载 STM32---中断与事件的区别
转自https://www.cnblogs.com/engraver-lxw/p/7518958.htmlSTM32---中断与事件的区别1简述 这张图是一条外部中断线或外部事件线的示意图。图中的蓝色虚线箭头,标出了外部中断信号的传输路径;图中红色虚线箭头,标出了外部事件信号的传输路径。 图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套。2概...
2019-07-09 18:17:02
14342
1
转载 SPI:高速同步串行口---讲的到位
转自:https://blog.youkuaiyun.com/zmq5411/article/details/6080991 SPI:高速同步串行口2010年12月16日 21:36:00 你来吻 阅读数:4583SPI:高速同步串行口。是一种标准的四线同步双向串行总线。 SPI,是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Moto...
2019-02-20 10:01:58
3417
转载 超越Adam,从适应性学习率家族出发解读ICLR 2018高分论文
发展路径:http://mp.weixin.qq.com/s/jVjemfcLzIWOdWdxMgoxsASGD AdaGrad AdaDeltaRMSPropAdam AMSGRAD 超越Adam,从适应性学习率家族出发解读ICLR 2018高分论文转自机器之心:http://mp.weixin.qq.com/s/jVjemfcLzIWOdWdxMgoxsA超越Adam,从适应性学习率家...
2018-04-16 00:02:43
2187
转载 梯度下降优化算法综述
梯度下降优化算法综述 一片不错的文章参考https://www.cnblogs.com/ranjiewen/p/5938944.html梯度下降优化算法综述 1. An overview of gradient descent optimization algorithms http://ruder.io/optimizing-gradient-descent/index.html ...
2018-04-15 23:56:24
583
转载 有关Linux下线程的调度
转自http://blog.youkuaiyun.com/hanchaoman/article/details/6697636有关Linux下线程的调度标签: linuxmanager多线程ibm工作编程2011-08-18 11:31 10838人阅读 评论(1) 收藏 举报 分类:linux系统(30) 版权声
2017-07-27 17:47:42
448
转载 Linux的进程/线程间通信方式总结
转自http://blog.youkuaiyun.com/kobejayandy/article/details/18863543Linux的进程/线程间通信方式总结2014-01-29 16:10 17386人阅读 评论(0) 收藏 举报 分类:Linux 精华文章(115) Linux系统中的进程间通信方式主要以下几种:
2017-07-27 15:46:34
1250
转载 va_start和va_end使用详解
转自http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html 本文主要介绍va_start和va_end的使用及原理。 在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。 介绍这两个宏之前先看一下C中传递函数的参
2017-07-14 10:05:21
1031
转载 使用CreateThread 时报错,函数调用缺少参数列表
=======================================================转自http://www.tc5u.com/mfc/1927534.htm声明:class AFX_EXT_CLASS UmaConnection{public:pSOCKET_OBJ FindSocketObj(pTHREAD_OBJ pThrea
2016-06-08 17:59:29
2513
转载 ubuntu手动安装软件包
转自:http://blog.chinaunix.net/uid-20778443-id-94528.html由于公司电脑不能直接上网,但是可以通过间接手段从网上下载,所以我就就有必要研究一下怎么通过手动的方法在ubuntu上安装软件。 1)手动安装包在ubuntu上一般都是用apt来安装软件的。如果不能直接通过网络更新,就需要下载deb包,用kpkg进行安装。
2015-06-16 18:40:38
8014
转载 C++基础遗漏:new和delete
C++基础遗漏:new和delete 摘自http://hi.baidu.com/lewvan/item/4c38d40d23a5b1103b53eeee 我记得当年学习C++基础的时候,老师曾经告诉我们:一般来说new和delete要成对出现,在使用完new申请的内存后要马上释放。我相信持这种说法的人不止我们老师一个人,养成良
2012-11-04 01:51:49
427
转载 static 总结
static总结 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5890923 一、c程序存储空间布局C程序一直由下列部分组成: 1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令; 2)初始化数据段(数据段)——在程序中
2012-11-04 01:46:02
358
转载 C语言的变量的作用域和生存期
C语言的变量的作用域和生存期 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5890186 一、c程序存储空间布局C程序一直由下列部分组成: 1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令; 2)初始化数据段(数据
2012-11-04 01:42:50
992
转载 C语言的const .
C语言的const 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5890199 const在C语言中算是一个比较新的描述符,我们称之为常量修饰符,意即其所修饰的对象为常量(immutable)。我们来分情况看语法上它该如何被使用。 1、函数体内修饰局部变量。例:void func(){const
2012-11-04 01:39:39
410
转载 各种内排序算法的C++实现
各种内排序算法的C++实现 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5911914 和很多计算机系的同学们一样,我在大学二年级时也学了《数据结构》这门课。当时我的老师是一个中科大的博士,现在已经是教授了。他在课上曾经这样评价这门课:《数据结构》几乎是所有计算机课程的基础课,如果把这门课学好了,其
2012-11-04 01:36:07
348
转载 C++数组--详细分析 .
C++数组--详细分析 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5919661 1、数组下标: (1)在定义时必须明确。 ①只能用正整数或const常量,静态或全局变量不可以;例如:const int length=5; int array[length];
2012-11-04 01:29:39
397
转载 比较带参宏与函数的异同 .
比较带参宏与函数的异同 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5932639 编译器是在程序的预编译阶段对宏进行处理的,主要是用预编译指令来替换源文件中的宏。 1.宏会在编译器在对源代码进行编译的时候进行简单替换,不会进行任何逻辑检测,即简单代码复制
2012-11-04 01:26:40
890
转载 C语言的编译过程 .
C语言的编译过程 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5932690 “C语言的编译过程”是我在大一时学习C语言这门课的第一课的内容,当时刚接触到编程语言,同时对计算机的底层运作原理以前不同。所以这第一节课让我感到甚是迷茫。在经过几年的学习后我再次翻开"c语言程序设计"这本书,对当初
2012-11-04 01:24:24
395
转载 细谈C语言中的strcpy,strncpy,memcpy,memmove,memset函数 .
细谈C语言中的strcpy,strncpy,memcpy,memmove,memset函数 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5945926 一.函数介绍:1、memcpy函数原型:extern void *memcpy(void *dest, con
2012-11-04 01:16:27
522
转载 细谈C++中的new和malloc .
摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5979819 new和malloc的区别: 1、new 是c++中的操作符,malloc是c 中的一个函数 2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不
2012-11-04 00:05:29
467
转载 细谈volatile限定符
细谈volatile限定符 摘自http://blog.youkuaiyun.com/piaojun_pj/article/details/5977218 volatile的本意是“易变的”,由于访问寄存器的速度要快过RAM,所以编译器一般都会作减少存取外部RAM的优化。比如: [cpp:showcolumns] view plaincopypri
2012-11-03 23:05:24
372
opencv学习必备文档
2016-10-11
CANfestival协议栈移植到S3c2410 LPC214x 24xx cortex-m3 at91xx等芯片上
2012-12-30
CANopen应用协议(全)
2012-12-30
最优化 matlab 程序 一维优化方法;二维优化方法
2011-05-15
(MATLAB中文论坛)Matlab神经网络30个案例分析 北航出版社 史峰 王小川等
2011-03-24
eetop.cn_Crack_Altera_6.0-9.1.rar
2010-03-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人