自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (5)
  • 收藏
  • 关注

原创 centOS 下redis 集群安装

说明:模拟  7 个几点 redis搭建集群,先创建包含6个节点的集群,最后再临时添加一个节点;服务器centos发行版:系统版本:硬件环境为3台虚拟机;ip和端口为:192.168.67.128:7000/7001/7002、 192.168.67.129:7003/7004/7005、192.168.0.127:7010;我偷懒直接把防火墙关闭: service iptab

2017-01-06 15:56:13 691

原创 laravel-5.3(2) 路由配置

第一步:按照上一篇搭建好工程后可以看到框架默认的 welcome 默认视图;一般的web 开发框架是MVC设计模式,那么我们现在创建自己的控制器和视图,CMD 进入到工程根目录执行 php artisan make:controller Admin/IndexController效果如下:成功后显示  Controller created successfully字样;刷新

2016-11-03 23:59:12 2078 1

原创 laravel-5.3(1) 安装

第一步下载 xampp  并安装;第二步下载 Composer-Setup.exe并安装;地址:https://getcomposer.org/Composer-Setup.exe。下载后安装会有个选项是选择php.exe执行文件的路径操作。我的是第三步打开  cmd    测试 composer安装是否正确。第四步:下载 Laravel 包;到

2016-10-24 17:00:22 924

转载 struct stat 简介

在使用这个结构体和方法时,需要引入:struct stat这个结构体是用来描述一个linux系统文件系统中的文件属性的结构。可以有两种方法来获取一个文件的属性:1、通过路径:int stat(const char *path, struct stat *struct_stat);int lstat(const char *path,struct stat *struct

2016-10-06 14:35:02 434

原创 Zend framework 2.x框架搭建

好几年没有用ZF了。记得还是在天津的时候,用的是ZF1.X,框架的源码也算全部阅读过。几年不用竟然出到3.0版本了。今天花了两个小时看了下。加上官方的和官方推荐的几个博客对比了下。可能是因为各个工具更新的缘故,网上说的不少方法已经不能用了。我尝试了下,重新梳理了下流程。环境:系统环境Win10 64位和Win 7 64皆可。我偷懒用了XAMPP 3.2.2 64 的版本。XAMPP一路

2016-09-24 16:43:50 478

转载 Linux编程基础——GDB(入门)

前期准备 在程序编译的时候,函数名、变量名会被相应的内存地址所代替,但这些内存地址对于我们来说是不可读的。我们往往需要需要根据函数名、变量名来查找实际的地址,从而读取其值。为了方便调试,gcc增加了一个-g参数,在编译的时候可以在程序集中添加相应的符号信息。     gcc-g hello.c -o hello启动GDB 启动GDB的方法有以下几种: gdb

2016-07-21 00:52:07 407

转载 Linux编程基础——GDB(设置断点)

启动GDB后,首先就是要设置断点,程序中断后才能调试。在gdb中,断点通常有三种形式:断点(BreakPoint):在代码的指定位置中断,这个是我们用得最多的一种。设置断点的命令是break,它通常有如下方式:break     在进入指定函数时停住break     在指定行号停住。break +/-offset    在当前行号的前面或后面的offset行停

2016-07-21 00:44:13 389

转载 GDB(十) 调试正在运行的进程

我编写了一个循环:把它编译成a.out,并在后台执行它:./a.out &[1] 2570然后用命令gdb ./a.out 2570可以附加到这个进程上。被时进程会中断。或者在GDB里输入attach 2570同样可以附加到进程。输入bt来查看栈(gdb) bt#0  0x008e9416 in __kernel_vsyscall ()#1  0x003bb90

2015-06-08 16:06:20 687

转载 GDB(九) 观察和改变变量

ptype命令可以查看变量的类型,简写为pt。gdb> ptype ntype = int也可以查看结构体的类型:gdb> pt mttype = struct mytype {    int a;    char *b;    short int c;}print命令查看变量的值,简写成p。gdb> p mt.a$2 = 30它以最‘舒适”的方

2015-06-08 16:04:18 1453

转载 GDB(八) 启动被调试程序

.gdbinit文件GDB启动时会载入.gdbinit文件。这个文件里包含比如“set listsize”之类的命令,GDB启动时会执行它们。GDB首先会在主目录下找,找不到则会在启动GDB的当前目录里找。GDB每次启动时会打印copyright信息。使用gdb -q启动GDB可以禁这个信息。使用shell的别名机制,alias gdbq="gdb -q",每次启动gdbq就可以启动不带cop

2015-06-08 15:05:15 773

转载 GDB(六) 断点

断点有三种类型:breakpoint在程序到达某个特定的点时中断。watchpoint在一个变量或表达式的值发生改变时中断。catchpoint当一个特定的事件发生时中断。对于breakpoint,有两种原因导致GDB没有停在设置中断点的位置。一、由于编译器的优化,代码在程序里没有对应的机器指令;二、不是所有的代码都会编译成机器指令,比如变量声明。通常这种情况下,程序会中断在离中断点最

2015-06-08 14:53:18 876

转载 GDB(五) 用GDB检查栈

载入一个程序并设置一个断点把之前的try1.c编译成可执行文件,并用gdb来载入:$ gdb try1GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08Copyright (C) 2011 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later

2015-06-08 14:31:47 509

转载 GDB(四) COFF

COFF(Common Object File Format)是在Unix上使用的可执行文件、object文件和共享库文件的格式规范。它规定了:符号调试信息。它由程序里的函数和变量的符号(字符串)名以及用来设置断点和跟踪执行的行号信息组成。符号名被存储在COFF符号表里。每个符号表项包含一个名字、存储类别、类型、值和段号。不超过8字符的短名字被直接存储在符号表里,更长的名字作为COFF对象

2015-06-08 14:26:29 520

转载 GDB(三) 栈框架和栈

内存布局里的一个区域被称为栈,它是栈框架的集合。每个栈框架表示一个函数调用。随着函数被调用,栈框架的数量会增加,栈也是增长。相反,当函数从它们的调用者那里返回,栈框架的数量减少,栈也会缩减。一个程序由一个或多个通过调用对方来交互的函数组成。每当一个函数被调用时,内存的一块区域为这个新的函数调用分配好,被称为栈框架。这块区域拥有一些重要信息,比如;1、新的被调用函数的所有自动变量的存储空间。

2015-06-08 14:18:34 745

转载 GDB(二) 内存布局

在有效学习如何使用GDB前,你必须理解框架(frame)。因为它们是组成栈(stack)的框架,所以也被称为调用栈框(call stack frames)。要学习栈,我们需要知道一个执行的程序的内存布局。每当一个进程被创建时,内核提供一块可以放置在任何地方的内存。然而,通过虚拟内存 (virtual memory,VM)的魔力,进程相信它拥有计算机上的所有内存。你可以已经听说过当RAM用完时使

2015-06-08 12:03:28 1362

转载 GDB(一) 引言

一个调试器(精确地称为symbolic debugger),是一个运行你的程序的应用。它可以单步调试源码、一行一行地执行你想要执行的每一行代码。你甚至可以单步调试你的机器指令。在任何时候,你可以在运行时检查甚至修改任何变量的值。如果你的程序崩溃,一个符号调试器会告诉你程序在哪以及为什么崩溃。你可以执行程序并看到哪些源码行以哪种顺序被执行。     调试器也可以解决无限循环的问题。使用它可以单步

2015-06-08 11:43:19 485

转载 Nginx源代码情景分析(3)——Nginx内存管理-1

第3章 Nginx内存管理内存管理是各个WEB服务器都相继实现了的独立功能,作为一个满足高性能的WEB服务器,面对各种请求和应答处理流程,必然涉及到内存以及连接的分配与管理,如果完全采用标准的malloc/free函数接口实现内存管理,频繁的调用必然引起性能的低效。Nginx也不例外,采用了短小精干的方式,实现了其特有的内存管理方式。通过这部分的分析学习,希望我们也能达到融会贯通的目的,不

2015-03-06 10:56:31 628

转载 类名与关键字之间的宏定义是做什么用的?

有一些类的定义如下:   class   DLLEXPORT   className   {   .......   };   问:   DLLEXPORT   可以是什么关键词,请列出他们并说明一下他们的作用 谢谢!------解决方案--------------------------------------------------------DLLEXPORT不是关键词。

2014-12-09 23:50:49 5879

原创 VIM默认行号设置

在vim或vi 的命令模式下输入":set nu"或者修改vi配置文件“vi ~/.vimrc”,在其中添加"set nu" 在vim的命令模式下输入":set nu",就有行号了。 但是想将这个设置写进VI的配置文件,就 # vi ~/.vimrc 在这个文件中,添加 "set nu" 就行了

2014-11-29 23:47:52 774

原创 mysql 今天碰到的两个问题。

做 PHP 和java 开发有几年了。linux 上安装

2014-09-04 11:42:46 592

原创 unp.h头文件的安装

1  下载  unpv13e.tar.gz  文件。   tar -zxvf unpv13e.tar.gz chmod -R 744 unpv13e/2   cd unpv13e./configurecd libmakecd ../libfreemake3  在unpv13e中生成 libunp.a 文件cp libunp.a /us

2014-09-03 14:52:00 1207 1

Objective-C高级编程 iOS与OS X多线程和内存管理

Objective-C高级编程 iOS与OS X多线程和内存管理

2015-04-10

Sqlite 数据库源码

Sqlite 数据库源码 有想学习 C 的可以好好看看这个源码 非常有用

2012-10-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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