8 _佚名-2018_

尚未进行身份认证

道虽迩,不行不至;事虽小,不为不成。

等级
博文 529
排名 1k+

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

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

2018-04-02 00:14:41

VMware下网络配置三种模式对比(桥接模式|主机模式|网络地址转换)

1VMware三种网络模式简介  VMWare提供了三种工作模式,它们是bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)。安装好虚拟机以后,在网络连接里面可以看到多了两块网卡。如下图。2bridged(桥接模式)2.1模式简介  在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的

2017-11-26 18:14:34

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

1.Apache+CGI的架构图2.Apache+PythonCGI的开发和配置方法(1)安装apache执行命令yuminstallhttpd即可完成apache的安装,确保apache配置/etc/httpd/conf/httpd.conf中包含如下配置:ScriptAlias/cgi-bin/"/var/www/cgi-bin/"

2017-11-23 17:33:43

开源许可证教程

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

2017-11-14 15:59:56

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

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

2017-09-27 11:26:46

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

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

2017-09-22 12:32:57

windows下的一些常用命令

1.ipconfigipconfig/all#查看所有网络连接ipconfig/displaydns#清除DNS解析程序缓存ipconfig/flushdns#清除DNS解析程序缓存ipconfig/renew#更新指定适配器的IPv4地址,这个和DNS没关系哦,只是列出来2.netstatnetstat-r

2017-07-17 00:24:29

网络隧道Tunnel技术

1.网络隧道技术隧道协议(TunnelingProtocol)是一类网络协议,它是一种数据包封装技术,它是将原始IP包(其报头包含原始发送者和最终目的地)封装在另一个数据包(称为封装的IP包)的数据净荷中进行传输。使用隧道的原因是在不兼容的网络上传输数据,或在不安全网络上提供一个安全路径。隧道协议通常(但并非总是)在一个比负载协议还高的层级,或同一层。备注:说白了,通过网络隧道技

2017-07-17 00:20:01

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

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

2017-07-16 12:51:20

虚拟局域网VLAN介绍和配置

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

2017-06-03 18:59:27

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

1.linux系统中路由表tablelinux最多可以支持255张路由表,每张路由表有一个tableid和tablename。其中有4张表是linux系统内置的:(1)tableid=0系统保留。(2)tableid=255称为本地路由表,表名为local。像本地接口地址,广播地址,以及NAT地址都放在这个表。该路由表由系统自动维护,管理员不能直接修改。(3

2017-06-03 18:48:43

远程桌面控制软件

目前有很多的远程桌面控制软件,例如:1.TeamViewerTeamViewer是一个远程控制软件,兼容于MicrosoftWindows、MacOSX、Linux、iOS、Android操作系统,也可以通过网页浏览器连接已安装TeamViewer的电脑。该软件可以轻易的穿透防火墙。2.VNCVNC由Olivetti&Oracle研究室所开发,此研究室在1999年

2017-05-29 13:21:35

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

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

2017-05-29 03:34:29

linux下RPM包制作

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

2017-05-29 03:23:57

Apache Avro项目简介

1.Avro简介    Avro是一种远程过程调用RPC和数据序列化框架,是在Apache的Hadoop项目之内开发的。它使用JSON来定义数据类型和通讯协议,使用压缩二进制格式来序列化数据。它主要用于Hadoop,在Hadoop的其他项目中(Hbase,Hive)的客户端与服务端的数据传输中被大量采用。它可以为持久化数据提供一种序列化格式,并为Hadoop节点间及从客户端程序到Hado

2017-04-29 20:29:22

域名注册及whois服务简介

1.ICANN与IANA    IANA,InternetAssignedNumbersAuthority,中文为互联网数字分配机构。ICANN,InternetCorporationforAssignedNamesandNumbers,中文为互联网名称与数字地址分配机构。2016年美国政府同意将IANA正式移交给了ICANN,ICANN是一个中立的非盈利组织。IC

2017-04-29 01:14:29

linux中虚拟网卡配置

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

2017-04-09 22:16:48

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

1.静态路由、动态路由以及默认路由    路由器中路由表中的路由记录可以有动态路由和静态路由两种。    动态路由是根据路由协议自动计算生成的,而静态路由是由人工配置的。默认路由是静态路由中的一种,是由人工配置的,表示当一个路由转发请求在路由表中匹配不到路由规则时,被默认执行的路由策略。默认路由,也称为缺省路由或默认网关。    动态路由可以自动寻找最优路径,邻居路由

2017-04-09 22:14:39

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

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

2017-04-09 18:39:44

systemd学习小结

1.systemd我们知道,在内核加载完成后,内核会启动init进程(系统1#进程),init进程会根据/etc/inittab来启动一系列的系统服务。而现在systemd是用来替代init进程的,目前很多的Linux系统发行版都默认使用了systemd,例如RedHat从版本7开始默认使用systemd作为初始化进程。systemd的设计目标是为系统的启动和管理提供一套完整的解决方案。sys

2017-04-09 04:36:03
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!