自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

@_囚徒-2018_的家园

通信&互联网&大数据&移动互联网&云计算&分布式计算&分布式存储&机器学习&深度学习&并行计算&人工智能&神经网...

转载 c函数调用过程原理及函数栈帧分析

 今天突然想分析一下函数在相互调用过程中栈帧的变化,还是想尽量以比较清晰的思路把这一过程描述出来,关于c函数调用原理的理解是很重要的。1.关于栈        首先必须明确一点也是非常重要的一点,栈是向下生长的,所谓向下生长是指从内存高地址->低地址的路径延伸,那么就很明显了,栈有栈...

2018-04-02 00:14:41 624 1

原创 Apache + CGI(Python)的简单实用WEB程序的开发

1.Apache + CGI的架构图 2.Apache + Python CGI的开发和配置方法 (1)安装apache 执行命令yum install httpd即可完成apache的安装,确保apache配置/etc/httpd/conf/httpd.conf中包含如下配置: Scri...

2017-11-23 17:33:43 1319 0

转载 开源许可证教程

一、什么是开源许可证 开源许可证是一种法律许可。通过它,版权拥有人明确允许,用户可以免费地使用、修改、共享版权软件。 版权法默认禁止共享,也就是说,没有许可证的软件,就等同于保留版权,虽然开源了,用户只能看看源码,不能用,一用就会侵犯版权。所以软件开源的话,必须明确地授予用户开源许...

2017-11-14 15:59:56 433 0

转载 自由或开源软件的发展历史

《从 UNIX 到 GitHub:十个关于自由和开源软件历史的重要事件》 https://my.oschina.net/editorial-story/blog/1543766

2017-09-27 11:26:46 995 0

转载 使用github创建个人主页及项目主页

很多开源项目托管平台都支持为托管的项目建立主页,但主页的维护方式都没有GitHub这么酷。大多数托管平台无非是开放一个FTP或类似服务,用户把制作好的网页或脚本上传了事,而在GitHub用户通过创建特殊名称的Git版本库或在Git库中建立特别的分支实现对主页的维护。 1. 创建个人主页 ...

2017-09-22 12:32:57 2911 0

原创 windows下的一些常用命令

1.ipconfig ipconfig /all #查看所有网络连接 ipconfig /displaydns #清除DNS解析程序缓存 ipconfig /flushdns #清除DNS解析程序缓存 ipconfig /renew #更新指定适配器...

2017-07-17 00:24:29 357 0

原创 网络隧道Tunnel技术

1.网络隧道技术 隧道协议(Tunneling Protocol)是一类网络协议,它是一种数据包封装技术,它是将原始IP包(其报头包含原始发送者和最终目的地)封装在另一个数据包(称为封装的IP包)的数据净荷中进行传输。使用隧道的原因是在不兼容的网络上传输数据,或在不安全网络上提供一个安全路径。隧道...

2017-07-17 00:20:01 17711 0

原创 Nginx安装及nginx+php环境的搭建

1.Nginx安装 在RedHat系Linux上,可以使用yum或源码安装nginx。yum安装linux直接通过yum intall nginx即可。如下是以源码的方式安装nginx的步骤: (1)在pcre官网上下载pcre-8.38的PCRE,并解压,不用安装啊,nginx使用--with-...

2017-07-16 12:51:20 466 0

原创 虚拟局域网VLAN介绍和配置

1.VLAN简介        虚拟局域网VLAN是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。        IEEE于1999年颁布了用于标准化VLAN实现方案的8...

2017-06-03 18:59:27 9951 0

原创 linux中路由策略rule和路由表table

1.linux系统中路由表table linux最多可以支持255张路由表,每张路由表有一个table id和table name。其中有4张表是linux系统内置的: (1)table id = 0 系统保留。 (2)table id = 255 称为本地路由表,表名为local。像本地接口地址...

2017-06-03 18:48:43 17865 1

原创 远程桌面控制软件

目前有很多的远程桌面控制软件,例如: 1.TeamViewer TeamViewer是一个远程控制软件,兼容于Microsoft Windows、Mac OS X、Linux、iOS、Android操作系统,也可以通过网页浏览器连接已安装TeamViewer的电脑。该软件可以轻易的穿透防火墙。...

2017-05-29 13:21:35 819 0

原创 RPM包快速制作工具fpm的安装和使用

1.fpm简介 fpm工具用来快速构建安装包,例如rpm,deps以及OSX packages等等。例如我们已经在本机上编译并安装了某个软件,那么通过fpm工具,可以将安装文件达成一个rpm包。fpm支持的源文件的格式有gem、python module、pear、目录、rpm、deb、node...

2017-05-29 03:34:29 1819 0

原创 linux下RPM包制作

1.rpmbuild rpm是Redhat系linux系统的包管理器,使用rpmbuild工具可以制作rpm包。 2.rpmbuild的配置文件 (1)rpmrc配置文件 /usr/lib/rpm/rpmrc /usr/lib/rpm/redhat/rpmrc /etc/rpmrc...

2017-05-29 03:23:57 1299 0

原创 Apache Avro项目简介

1.Avro简介        Avro是一种远程过程调用RPC和数据序列化框架,是在Apache的Hadoop项目之内开发的。它使用JSON来定义数据类型和通讯协议,使用压缩二进制格式来序列化数据。它主要用于Hadoop,在Hadoop的其他项目中(Hbase,Hive)的客户端与服务端的数据...

2017-04-29 20:29:22 481 0

原创 域名注册及whois服务简介

1.ICANN与IANA         IANA,Internet Assigned Numbers Authority ,中文为互联网数字分配机构。ICANN,Internet Corporation for Assigned Names and Numbers,中文为互联网名称与数字地址分配...

2017-04-29 01:14:29 693 0

原创 linux中虚拟网卡配置

1.虚拟网卡 虚拟网卡,又称为网卡别名。虚拟网络接口卡是基于主机的物理网卡的虚拟网络接口。每一个主机可以有多个物理网卡,而每个物理网卡可以有多个虚拟机网络接口卡(虚拟网卡)。 2.虚拟网卡的配置方法 (1)使用ifconfig命令临时配置,重启机器后失效 ifconfig eth0...

2017-04-09 22:16:48 1567 0

原创 静态路由 | 动态路由 | 默认路由的配置方法

1.静态路由、动态路由以及默认路由        路由器中路由表中的路由记录可以有动态路由和静态路由两种。        动态路由是根据路由协议自动计算生成的,而静态路由是由人工配置的。默认路由是静态路由中的一种,是由人工配置的,表示当一个路由转发请求在路由表中匹配不到路由规则时,被默认执行的路由...

2017-04-09 22:14:39 8622 0

原创 Linux中网卡绑定bonding以及网络成组teaming技术学习

1.网卡绑定bonding技术 (1)bonding技术简介 网卡bonding技术是一种将多个物理网卡整合成一个逻辑网卡的技术,目的在于单个网卡的带宽或者容错能力。Linux内核2.x版本后,提供了Bonding技术的支持。 Linux Bonding技术支持七种模式,有些模式用来提供负载均...

2017-04-09 18:39:44 6387 0

转载 systemd学习小结

1.systemd 我们知道,在内核加载完成后,内核会启动init进程(系统1#进程),init进程会根据/etc/inittab来启动一系列的系统服务。而现在systemd是用来替代init进程的,目前很多的Linux系统发行版都默认使用了systemd,例如RedHat从版本7开始默认使用sy...

2017-04-09 04:36:03 723 0

原创 linux中lspci命令简介

1.lspci命令 spci,顾名思义,就是显示所有的PCI设备信息。PCI是一种总线,而通过PCI总线连接的设备就是PCI设备了。如今,我们常用的设备很多都是采用PCI总线了,如:网卡、存储等。 在linux中直接使用lspci命令,就可以查看系统中所有PCI设备的信息。

2017-04-04 01:36:59 1139 0

原创 RSA加密解密和签名验证机制以及其区别和联系

1.RSA的加密解密机制原理 RSA公钥加密体制包含如下3个算法:KeyGen(密钥生成算法),Encrypt(加密算法)以及Decrypt(解密算法)。详细如下: 所以,从算法描述中我们也可以看出:公钥用于对数据进行加密,私钥用于对数据进行解密。当然了,这个也可以很直观的理解:公钥就是公开...

2017-04-03 18:16:42 4491 0

转载 Python的方法解析顺序(MRO)

对于支持继承的编程语言来说,其方法(属性)可能定义在当前类,也可能来自于基类,所以在方法调用时就需要对当前类和基类进行搜索以确定方法所在的位置。而搜索的顺序就是所谓的「方法解析顺序」(Method Resolution Order,或MRO)。对于只支持单继承的语言来说,MRO 一般比较简单;而对...

2017-02-23 15:07:57 568 0

原创 Cygwin的安装和使用

1.Cygwin是什么   Cygwin是一个用于Windows平台上的类UNIXshell环境。 它由两个组件组成:一个UNIX API库,它模拟UNIX操作系统提供的许多特性;以及Bash shell的改写版本和许多UNIX实用程序,它们提供大家熟悉的 UNIX命令行界面。前一个组件是一个W...

2017-01-24 23:56:38 642 0

原创 领域专用语言DSL简介

所谓领域专用语言(Domain Specific Language,DSL),其基本思想是“求专不求全”,不像通用目的语言那样目标范围涵盖一切软件问题,而是专门针对某一特定问题的计算机语言。几乎自计算机发明伊始,人们就开始谈论DSL使用DSL了。    Unix社群是一个频繁使用DSL的社群,他们...

2017-01-24 23:07:15 1226 0

原创 标准时间GMT|UTC以及NTP协议学习

1.GMT时间         GMT,Greenwich MeanTime,中文名为格林尼治时间。英国的格林尼治这个城市在经度为零的地球经线上,所以地球以格林尼治所在的0度经线为标准,分为24个时区。自格林尼治以东依次为东一区、东二区等等,自格林尼治以西依次为西一区、西二区等等。例如,北京...

2017-01-24 17:36:38 2077 0

转载 代理自动配置PAC学习

什么是 PAC PAC,一个自动代理配置脚本,包含了很多使用 JavaScript 编写的规则,它能够决定网络流量走默认通道还是代理服务器通道,控制的流量类型包括:HTTP、HTTPS 和 FTP。 它是一段 JavaScript 脚本: function FindProxyForU...

2017-01-22 11:00:39 10356 0

原创 postMan介绍和使用小结

1.postMan简介   postMan是一款功能强大的网页调试与发送网页HTTP请求的工具。postMan能够发送任何类型的HTTP请求(GET, HEAD, POST,PUT..),附带任何数量的参数和HTTP headers。支持不同的认证机制(basic, digest,OAuth),...

2017-01-07 18:11:18 8036 2

转载 主流浏览器内核介绍

内核 首先得搞懂浏览器内核究竟指的是什么。 浏览器内核又可以分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后...

2017-01-06 23:46:46 255 0

转载 JavaScript的模块编程与require.js的使用

1.JavaScript的模块编程概念    网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等。开发者不得不使用软件工程的方法,管理网页的业务逻辑。JavaScript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模...

2016-12-31 23:21:19 246 0

原创 Node.js基础学习

1.Node.js简介 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google chrome的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。nodejs的出现让JavaScript可以运行在服务端,而不是只局限于运行在各种浏览器环境中。Nod...

2016-12-31 18:40:47 467 0

原创 Node.js中的模块管理

1.Node.js中的模块 一个Node.js文件就是一个模块,这个文件可能是JavaScript代码、JSON 或者编译过的C/C++ 扩展。且在该文件中需要使用exports和module.exports将模块中的函数和变量导出。然后在要使用模块的文件中使用require('./fi...

2016-12-31 18:31:46 648 0

原创 JavaScript的数据类型的隐式转换

Javascript是弱类型的语言,也就是Javascript中定义变量时,不会显式地指明一个变量的数据类型。例如var aa=3。 +/-/==操作符可以将JavaScript中的变量进行隐式转换,eg:表达式"12"+ 34的结果是46。string类型的12被隐式转换...

2016-12-31 16:17:36 186 0

转载 JavaScript 运行机制详解:再谈Event Loop

一年前,我写了一篇《什么是 Event Loop?》,谈了我对Event Loop的理解。 上个月,我偶然看到了Philip Roberts的演讲《Help, I'm stuck in an event-loop》。这才尴尬地发现,自己的理解是错的。我决定重写这个题目,详细、完整、正确...

2016-12-28 02:14:18 460 0

原创 javascript中的闭包概念

1.闭包的定义 闭包是指那些能够访问独立(自由)变量的函数 (变量在本地使用,但定义在一个封闭的作用域中)。换句话说,这些函数可以“记忆”它被创建时候的环境。 说白了,就是闭包是一个可以访问封闭作用域中定义的变量的函数。   2.举例说明 普通的javascript函数: function ini...

2016-12-26 02:29:54 307 0

原创 URL中的#号(URL哈希Hash)

一、#的涵义 #代表网页中的一个位置。其右面的字符,就是该位置的标识符。比如,   http://www.example.com/index.html#print 就代表网页index.html的print位置。浏览器读取这个URL后,会自动将print位置滚动至可视区域。 为网页位置...

2016-12-25 03:22:39 1630 0

原创 PHP HelloWorld程序

php脚本以如下格式来书写: <?php // PHP 代码 ?>例如php的helloworld程序为: <?php echo "Hello World!!!" ?>

2016-12-25 02:33:56 602 0

原创 在Windows的命令提示符cmd中使用ssh工具--OpenSSH for Windows

在windows上面要ssh linux主机,不外乎常见的就是用winscp/pietty/putty/SecureCRT等工具软件。当然我们也可以直接在命令提示符cmd中使用ssh工具,这个时候就需要安装OpenSSH For Windows工具。安装方法如下: (1)现在OpenSS...

2016-12-18 18:41:00 30861 2

原创 使用vagrant+VirtualBox搭建虚拟开发环境

1.Vagrant Vagrant 是一个虚拟机管理和配置工具,所以虚拟机系统还得靠专门的虚拟化软件,Vagrant它底层支持VirtualBox、VMware甚至AWS作为虚拟机系统。通常情况下,如果你的 Vagrant 环境需要封装给其他小伙伴们用,最好使用 VirtualBox这个支持 O...

2016-12-18 18:21:52 17275 0

原创 C语言标准发展历史以及各种libc实现

1.C语言的标准发展历史 C语言的标准经历过C89、C90、C99以及C11几个版本的发展 (1)C89 1983年,美国国家标准协会ANSI组成了一个委员会,X3J11,为了创立C的一套标准。经过漫长而艰苦的过程,该标准于1989年完成,并在作为ANSIX3.159-1989 "...

2016-11-28 01:12:50 2629 0

转载 搭建私有的PyPI仓库源

1.官方PyPI源以及私有PyPI源   通常我们使用pip安装python包,都会默认从 https://pypi.python.org/pypi 上安装,非常方便。但是有些是公司内部的项目,不方便放到外网上去,这个时候我们就要搭建自己的内网pypi源服务器,需要安全并且拥有同样的舒适体验...

2016-11-27 16:19:15 9476 0

提示
确定要删除当前文章?
取消 删除