LINUX开发
ZhuoJieTech
武汉卓杰科技
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ESXI 6.7 环境 centos7.6 虚拟机安装tesla k80 显卡驱动失败问题解决
ESXI 6.7 环境 16.04虚拟机安装tesla k80 一切正常,但虚拟机重装了centos7.6后,驱动一直安装失败,报错如下:换了多个驱动版本,问题依然存在。安装时指定 --no-kernel-module-source选项,仍然找不到显卡,不能和显卡通信。后来解决方法如下 :按常规设置新建虚拟机,添加PCI设备,如下图坑1:无法打开虚拟机 CentOS 7 K80 的电源。内存设置无效: 内存预留 (sched.mem.min) 应该等于内存大小 (16384...原创 2021-04-26 08:32:32 · 8645 阅读 · 3 评论 -
如何从远程主机上拷贝docker image到本地
如何从远程主机上拷贝docker image到本地 1.以root身份在远程主机保存image到文件 docker save -o [filename] [image] 示例: docker save -o aspnet.tar mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim 2.修改保存文件为任何人可读 chmod a+r [filename] 3.本地主机使用scp命令..转载 2021-02-25 11:05:48 · 1499 阅读 · 0 评论 -
查看系统glibc支持的版本
glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。由于 glibc 囊括了几乎所有的UNIX通行的标准,可以想见其内容包罗万象。而就像其他的 UNIX 系统一样,其内含的档案群分散于系统的树状目录结构中,像一个支架一般撑起整个操作系统。在 GNU/Linux 系统中,其C函式库发展史点出了GNU/Linux 演进的几个重要..原创 2021-01-16 11:05:09 · 4134 阅读 · 0 评论 -
Python使用Glob查找文件
Python 3.5+从Python版本3.5开始,glob模块支持该"**"指令(仅当您传递recursive标志时才会解析该指令):import globfor filename in glob.iglob('src/**/*.c', recursive=True):print(filename)如果你需要一个列表,只需使用glob.glob而不是glob.iglob。import fnmatchimport osmatches = []for root, dir转载 2020-12-16 14:55:50 · 418 阅读 · 0 评论 -
UPYUN 用到的技术
黄慧攀:UPYUN 用到的技术非常多,我们团队里面也鼓励创新尝试。我们CDN系统使用到的技术有:Nginx (C+Lua)、Apache Traffic Server(C++);云处理系统主要用到 Python;而云存储系统则主要是 Erlang 开发语言。我们的Web端,则主要是 Node.JS 语言;另外我们还有移动研发部门,这不用说就是 object-c 、Java 和 Sw转载 2015-06-16 16:53:10 · 699 阅读 · 0 评论 -
说说Linux线程的栈空间
刚接触C编程时, 比较喜欢用局部变量, 因为局部变量是在栈上分配的,会自动释放, 不会造成内存泄漏, 碎片什么的,觉得比malloc/new 出来的堆内存好使多了,大家可能说malloc/new可以分配动态内存,其实linux/win32的大多数平台提供了一个类似的函数alloca也可以来动态的分配栈内存。 栈变量正用得不亦乐乎的时候,悲剧发生了, 程序运行中老是出现莫名其妙的转载 2015-06-18 11:26:44 · 709 阅读 · 0 评论 -
linux中使用pthread_kill函数测试线程是否存活的例子
linux中使用pthread_kill函数测试线程是否存活的例子原文地址:下午实验编写了使用pthread_kill函数检测一个线程是否还活着的程序,在linux环境下gcc编译通过,现将代码贴在下面:/******************************* pthread_kill.c ******************************转载 2015-06-18 16:35:28 · 1790 阅读 · 0 评论 -
Linux下TCP keepalive心跳设置
Linux下TCP keepalive属性的表现 2008-03-20 15:28:55分类: LINUXtcp是面向连接的,在实际应用中通常都需要检测连接是否还可用.如果不可用,可分为:a. 连接的对端正常关闭.b. 连接的对端非正常关闭,这包括对端设备掉电,程序崩溃,网络被中断等.这种情况是不能也无法通知对端的,所以连接会一直存在,浪费国家的资源.转载 2015-07-31 11:03:24 · 3579 阅读 · 0 评论 -
Program received signal SIGUSR1, User defined signal 1.解决方法
我程序用的多线程,有定时器。结果定时器时间到时,就出现如下的错误。Program received signal SIGUSR1, User defined signal 1.程序就退出了。看我还想继续执行呢。解决方法如下:run以前设置程序收到SIGUSR1信号时,不会退出就可以了。(gdb) handle SIGUSR1 nostopSignal Sto原创 2015-08-05 10:07:56 · 11015 阅读 · 0 评论 -
makefile查找文件是否存在,不存在才拷贝;
linux配置程序时,经常需要设置配置文件。程序更新时,配置文件不需要替换,只有第一次部署时才拷贝。脚本如下:file = /etc/1.confifeq ($(file), $(wildcard $(file)))@echo 1.conf existelsecp 1.conf $(etc_dir)endif原创 2015-09-28 14:58:17 · 11078 阅读 · 0 评论 -
makefile查找文件是否含某特定字符,若没有才添加;
程序配置时,经常需要在脚本中设置程序自启动。脚本中不含启动程序的命令时才添加,包含时忽略。脚本如下:注意,此处- q 表示不打印查找信息find_info = $(shell grep -q "vcommand start" /etc/rc.d/rc.local && echo "yes" || echo "no")strbash = yesconfi原创 2015-09-28 14:51:00 · 2075 阅读 · 0 评论 -
在Linux中创建静态库.a和动态库.so
在Linux中创建静态库.a和动态库.so我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。 1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进转载 2015-09-24 15:08:51 · 480 阅读 · 0 评论 -
c/c++经典面试题
一、指针与引用有什么区别?1、指针会占用内存,引用不占用内存。2、引用在定义时必须初始化。3、没有空的引用,但是有空的指针。二、static关键的几个作用1、函数体内的static变量的作用范围为该函数体,该变量内存只分配一次,因此其值在下次再调用该函数时仍维持上次的值。2、在模块内的static全局变量可以被模块内的其他函数访问,但不能被模块外的函数访问。3、在模块内的static函数只能被模块...转载 2018-05-14 14:26:45 · 202 阅读 · 0 评论 -
char和unsigned char--数据类型区别
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别 首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,因此char能表示-128~127, unsigned char没有符号位,因此能表示0~255,这个好理解,8个bit,最多256种情况,...转载 2018-09-13 08:15:32 · 986 阅读 · 0 评论 -
服务器开发
熟悉posix os 熟悉win32多线程以及异步模型精通kqueue, epoll和iocp 精通libevent, libuv和ace熟悉tcp/ip原理,曾经手工实现tcp/ip系统栈熟悉线程池 内存池技术 各类内存调度分配算法精通C++编程模型 模板元编程 以及泛型编程,精通stl boost精通cmake automake git svn hg等多种项目管理和版本控制工转载 2015-06-16 17:27:05 · 541 阅读 · 0 评论 -
关于TCP的可靠性
关于TCP的可靠性TCP是一个可靠的协议。有时人们会说:"TCP能够保证它所发送数据的可靠传输。"这种说法尽管很常见,但却非常不恰当。首先,只要稍微想一下就会知道这不可能是对的。比如,假设在数据传输的过程中将一台主机从网络上断开,TCP这侧不管做出何种努力,都无法获取其余 的数据。网络确实会中断,主机确实会崩溃,用户确实会在TCP连接仍然活跃的时候关机。这些事件或其他类似的事件都使转载 2015-06-16 16:28:19 · 517 阅读 · 0 评论 -
source insigt 的 有用配置
source insight代码对齐Tab键终极版以前也写过一个source insight代码对齐,由于自己理解不够深刻,只能解决部分问题,不能根治在source insight中对齐的代码在XXX编辑器中全乱了的问题。在改变字体为Courier New字体后,代码无法对齐的主要原因就是Tab与空格的问题。在很多大公司如华为已经禁止在代码中使用Tab来对齐了,这是个好习惯。有同学要说了,什么不准转载 2014-06-26 14:39:19 · 2537 阅读 · 0 评论 -
HTTP Live Streaming直播(iOS直播)技术分析与实现
HLS技术要点分析 HTTP Live Streaming(HLS)是苹果公司(Apple Inc.)实现的基于HTTP的流媒体传输协议,可实现流媒体的直播和点播,主要应用在iOS系统,为iOS设备(如iPhone、iPad)提供音视频直播和点播方案。HLS点播,基本上就是常见的分段HTTP点播,不同在于,它的分段非常小。要实现HLS点播,重点在于对媒体文件分段,目前有不少开源工具可以使转载 2014-10-28 09:44:19 · 628 阅读 · 0 评论 -
C修改文件内容
方法是:xa#include "stdio.h"main(){FILE *in=fopen("f:\\test.txt","r");FILE *out=fopen("f:\\back.txt","w"); /*out是充当临时文件作用*/int ch=0;if(!in){printf("cann't open test.txt\n");exit(1转载 2014-10-29 14:29:49 · 1724 阅读 · 0 评论 -
RTP协议分析
RTP协议分析第1章. RTP概述1.1. RTP是什么RTP全名是Real-time Transport Protocol(实时传输协议)。它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本)。RFC3550不仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Pro转载 2014-10-17 09:40:09 · 629 阅读 · 0 评论 -
女程序员的职业规划
女程序员的职业规划引子 很多姐妹发微博评论留言给我,说希望我写一篇关于女程序员职业规划的文章。很惭愧,我自己的职业规划都还没亲自验证完毕,coder之路还在继续,在此仅仅分享我的所闻、所见、所学、所思,有说的不准确的地方还请指正。规划路线 范范的讲,老四样路线:1.技术线路。2.业务路线。 3.实施路线。4、销售路线。女程序转载 2014-10-17 09:39:38 · 925 阅读 · 0 评论 -
RTSP 协议分析
RTSP 协议分析1.概述: RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学、网景和RealNetworks公司提交的IETF RFC标准。该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。类似HTTP协议的流控制协议。它们都使用纯文本来发送信息,而且rtsp协议的语法也和HTTP转载 2014-10-17 17:16:05 · 521 阅读 · 0 评论 -
RTSP实例
以下是某省IPTV的RTSP协商过程:DESCRIBE rtsp://118.122.89.27:554/live/ch10083121594790060557.sdp?playtype=1&boid=001&backupagent=118.122.89.27:554&clienttype=1&time=20100929182111+08&life=172800&ifpricereqsnd转载 2014-10-17 17:17:15 · 692 阅读 · 0 评论 -
valgrind详细说明
文地址:http://www.cnblogs.com/napoleon_liu/articles/2001802.html调不尽的内存泄漏,用不完的ValgrindValgrind 安装1. 到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz22. 解压安装包:tar –jxvf valgrind-3.2.3.tar.bz转载 2014-12-05 14:45:52 · 812 阅读 · 1 评论 -
Makefile与Shell脚本
Makefile与Shell脚本分类: linux编程相关 shell编程 makefile相关2011-09-30 09:11 1665人阅读 评论(1) 收藏 举报makefileshell脚本path正则表达式工作 最近由于工作需要完善Makefile系统,并对Makefile调用shell脚本有了更深的认识。大家都知道在Makefile可以调用shell转载 2015-04-08 11:10:06 · 495 阅读 · 0 评论 -
Linux下ffmpeg添加 x265
Linux下ffmpeg添加 h265在linux 上安装ffmpeg 支持h265编码器按照以下步骤: 1、安装 Mercurial ;2、安装CMake 2.8.8 or later;3、YASM 1.2.0 及以上版本;4、Download the libx265 repository and build as per the instructions here: h原创 2015-05-11 14:21:51 · 9235 阅读 · 0 评论 -
如何快速成长
提问:对于还未有太多职场经验的技术人,该如何快速成长,您有什么好的建议?程远:首先是高效的学习。在IT行业,技术能力往往被看做是最重要的。不论以后你想做技术专家还是管理人员,技术能力都是前提。公司不是学校,需要改变由老师灌输知识的学习方式。不能被动的学习,等着别人给你讲。而是要主动的学习,因此自学能力很重要。另外就是不要太在乎某项特殊的技术,一个工程师解决问题的能力是关键。多从实践中提升,转载 2015-06-16 16:59:14 · 496 阅读 · 0 评论 -
如何成长为技术合伙人?
莫显峰:学习能力非常重要,另外新人要能吃苦愿意多做事(关于成长),愿意跳出工作范围一点,掌握更多周边的知识。沟通很重要,尤其是技术人员,给人的印象典型的闷,但是闷也会阻碍快速成长,毕竟缺少了周围相关人员给与的助力。另外对于技术人员还有额外两个要求就是细心和责任感。我在选人方面大概会遵守上述原则,外加一个基础能力(比如算法、数据结构等)。现场互动:能否转载 2015-06-16 16:45:01 · 812 阅读 · 0 评论 -
C高效编程举例
编写高效简洁的C语言代码,是许多软件工程师追求的目标。本文就工作中的一些体会和经验做相关的阐述,不对的地方请各位指教。第1招:以空间换时间 计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招——以空间换时间。例如:字符串的赋值。方法A,通常的办法:#define LEN 32char string转载 2011-10-28 16:32:07 · 366 阅读 · 0 评论
分享