<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[runnerred的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/runnerred</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; runnerred]]></copyright><item><title><![CDATA[全局变量和局部变量在内存里的区别？堆和栈]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78863403</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78863403</guid><author>runnerred</author><pubDate>Thu, 21 Dec 2017 14:23:53 +0800</pubDate><description><![CDATA[全局变量和局部变量在内存里的区别？堆和栈 
转：一、预备知识—程序的内存分配  
一个由c/C++编译的程序占用的内存分为以下几个部分  
1、栈区（stack）— 由编译器自动分配释放 ，存放函数的参数值，局部变量的值等。其操作方式类似于数据结构中的栈。  
2、堆区（heap） — 一般由程序员分配释放， 若程序员不释放，程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事，分配方式倒是类]]></description><category></category></item><item><title><![CDATA[Linux下查看内核、CPU、内存及各组件版本的命令和方法]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78805365</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78805365</guid><author>runnerred</author><pubDate>Thu, 14 Dec 2017 17:43:58 +0800</pubDate><description><![CDATA[Linux下查看内核、CPU、内存及各组件版本的命令和方法Linux查看内核版本： uname -a 
                        more /etc/*release  
                        more /etc/RedHat-release 
                        more /proc/version查看CPU信息：grep]]></description><category></category></item><item><title><![CDATA[Setting up Django and your web server with uWSGI and nginx]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78575080</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78575080</guid><author>runnerred</author><pubDate>Sun, 19 Nov 2017 16:26:05 +0800</pubDate><description><![CDATA[This tutorial is aimed at the Django user who wants to set up a production web server. It takes you through the steps required to set up Django so that it works nicely with]]></description><category></category></item><item><title><![CDATA[cmake指令详解]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78499467</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78499467</guid><author>runnerred</author><pubDate>Fri, 10 Nov 2017 14:25:57 +0800</pubDate><description><![CDATA[PROJECT(工程名字)这条指令会自动创建两个变量：
_BINARY_DIR(二进制文件保存路径)    _SOURCE_DIR（源代码路径） 
cmake系统也帮助我们预定义了PROJECT_BINARY_DIR和PROJECT_SOURCE_DIR其值与上述对应相等SET(变量名 变量值)SET(VAR [VALUE] [CACHE TYPEDOCSTRING [FORCE]])
SET(SR]]></description><category></category></item><item><title><![CDATA[nginx: unrecognized service 问题解决]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78380459</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78380459</guid><author>runnerred</author><pubDate>Sat, 28 Oct 2017 23:05:04 +0800</pubDate><description><![CDATA[启动Nginx相关模块1.配置好之后就可以开启nginx服务器了。可以在终端执行：service nginx start注：可能会出现一下错误：nginx: unrecognized service解决方法：下载nginx的启动脚本：wget -O init-deb.sh http://library.linode.com/assets/660-init-deb.sh将脚本添加到init.d目录]]></description><category></category></item><item><title><![CDATA[Qt Creator 快捷键]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78315276</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78315276</guid><author>runnerred</author><pubDate>Mon, 23 Oct 2017 09:05:23 +0800</pubDate><description><![CDATA[简介Qt Creator中提供了各种快捷键来加快开发进程。如果需要查看或自定义快捷键，选择工具->选项->环境->键盘。快捷键按类别列出，可以在过滤器(Filter)处输入命令名称、标签名称或快捷键名称，来快速定位想要查找的快捷键。以红颜色显示的快捷键与某些功能相关联。Qt Creator可以在当前上下文中执行该功能。如果几个功能用同一个快捷键，那么就会产生冲突，Qt Creator不会执行任何功能]]></description><category></category></item><item><title><![CDATA[Nginx+uWSGI+Django原理]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78314433</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78314433</guid><author>runnerred</author><pubDate>Sun, 22 Oct 2017 23:18:13 +0800</pubDate><description><![CDATA[Python的Web开发中，如果使用Django框架，那么较为成熟稳定的服务器架构一般是Nginx+uWSGI+Django。]]></description><category></category></item><item><title><![CDATA[Python正则表达式指南]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78288880</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78288880</guid><author>runnerred</author><pubDate>Thu, 19 Oct 2017 20:10:13 +0800</pubDate><description><![CDATA[本文介绍了Python对于正则表达式的支持，包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式，这些主题请查看其他教程。注意：本文基于Python2.4完成；如果看到不明白的词汇请记得百度谷歌或维基，whatever。]]></description><category></category></item><item><title><![CDATA[Django 一张网站框架图]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78265094</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78265094</guid><author>runnerred</author><pubDate>Tue, 17 Oct 2017 19:29:54 +0800</pubDate><description><![CDATA[框架图：]]></description><category></category></item><item><title><![CDATA[Django request.GET 编码错误解决]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78255158</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78255158</guid><author>runnerred</author><pubDate>Mon, 16 Oct 2017 22:16:14 +0800</pubDate><description><![CDATA[出错的代码：#接收请求数据
def search(request):
    request.encoding = 'utf-8'
    if 'q' in request.GET:
        message = '你搜索的内容为: ' + request.GET['q']
    else:
        message = '你提交了空表单'
    return HttpRespon]]></description><category></category></item><item><title><![CDATA[Linux命令之pstree - 以树状图显示进程间的关系]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78250157</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78250157</guid><author>runnerred</author><pubDate>Mon, 16 Oct 2017 15:21:01 +0800</pubDate><description><![CDATA[pstree命令以树状图显示进程间的关系（display a tree of processes）。ps命令可以显示当前正在运行的那些进程的信息，但是对于它们之间的关系却显示得不够清晰。在Linux系统中，系统调用fork可以创建子进程，通过子shell也可以创建子进程，Linux系统中进程之间的关系天生就是一棵树，树的根就是进程PID为1的init进程。

常用参数

格式：pstree]]></description><category></category></item><item><title><![CDATA[深层次理解MVC]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/78221874</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/78221874</guid><author>runnerred</author><pubDate>Fri, 13 Oct 2017 09:06:02 +0800</pubDate><description><![CDATA[MVC全名是Model View Controller，是模型(model)－视图(view)－控制器(controller)的缩写，一种软件设计典范。 




那么MVC框架究竟干了些什么：用一种业务逻辑、数据、界面显示分离的方法组织代码，将业务逻辑聚集到一个部件里面。各部分相互独立并且相互联系。可以让各自专注于自己的任务。但是不得不承认MVC只能称之为低耦合性。 


优点在]]></description><category></category></item><item><title><![CDATA[GDB layout 命令]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/77714869</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/77714869</guid><author>runnerred</author><pubDate>Wed, 30 Aug 2017 13:56:49 +0800</pubDate><description><![CDATA[layout：用于分割窗口，可以一边查看代码，一边测试。主要有以下几种用法：
layout src：显示源代码窗口
layout asm：显示汇编窗口
layout regs：显示源代码/汇编和寄存器窗口
layout split：显示源代码和汇编窗口
layout next：显示下一个layout
layout prev：显示上一个layout
Ctrl + L：刷新窗口
Ctr]]></description><category></category></item><item><title><![CDATA[const T、const T*、T *const、const T&、const T*& 的区别]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/76127636</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/76127636</guid><author>runnerred</author><pubDate>Wed, 26 Jul 2017 10:39:11 +0800</pubDate><description><![CDATA[目录(?)[+]





这里的T指的是一种数据类型，可以是int、long、doule等基本数据类型，也可以是自己类型的类型class。单独的一个const你肯定知道指的是一个常量，但const与其他类型联合起来的众多变化，你是不是就糊涂了？下面我们一一来解析。

const T

定义一个常量，声明的同时必须进行初始化。一旦声明，这个值将不能被改变。
int i = 5]]></description><category></category></item><item><title><![CDATA[GDB 常用命令参考手册]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/75013613</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/75013613</guid><author>runnerred</author><pubDate>Wed, 12 Jul 2017 14:49:45 +0800</pubDate><description><![CDATA[原文链接




GDB 常用命令参考手册

GDB 命令行参数GDB 命令GDB 操作提示GDB 相关手册相关链接

 







 


 








GDB 命令行参数




启动 GDB：

gdb executablegdb -e executable -c core-filegdb executable]]></description><category></category></item><item><title><![CDATA[linux下./bashrc文件]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/75013258</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/75013258</guid><author>runnerred</author><pubDate>Wed, 12 Jul 2017 14:44:40 +0800</pubDate><description><![CDATA[/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.




/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信]]></description><category></category></item><item><title><![CDATA[C++静态成员函数访问非静态成员的几种方法]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/74194105</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/74194105</guid><author>runnerred</author><pubDate>Mon, 03 Jul 2017 14:36:23 +0800</pubDate><description><![CDATA[大家都知道C++中类的成员函数默认都提供了this指针，在非静态成员函数中当你调用函数的时候，编译器都会“自动”帮你把这个this指针加到函数形参里去。当然在C++灵活性下面，类还具备了静态成员和静态函数，即


class A
{
public:
    static void test()
    {
        m_staticA += 1;
    }
private:]]></description><category></category></item><item><title><![CDATA[Starting emulator for AVD 'myAndroid' Failed to allocate memory: 8  解决方法]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/74108125</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/74108125</guid><author>runnerred</author><pubDate>Sun, 02 Jul 2017 13:06:45 +0800</pubDate><description><![CDATA[虚拟机内存设置过大，减小内存即可解决]]></description><category></category></item><item><title><![CDATA[根据Linux内核menuconfig编译选项查找源代码文件]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/73842146</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/73842146</guid><author>runnerred</author><pubDate>Wed, 28 Jun 2017 14:44:49 +0800</pubDate><description><![CDATA[1、找到需要的编译选项，以“USB Test and Measurement Class support”为例；
2、选择 查看帮助信息：


3、查看帮助信息里的Kconfig文件找到配置选项USB_TMC，再查看Makefile找到该选项对应的源文件，如下图所示。]]></description><category></category></item><item><title><![CDATA[mmap()函数分析]]></title><link>https://blog.youkuaiyun.com/runnerred/article/details/73332450</link><guid>https://blog.youkuaiyun.com/runnerred/article/details/73332450</guid><author>runnerred</author><pubDate>Fri, 16 Jun 2017 15:44:21 +0800</pubDate><description><![CDATA[阅读目录

mmap基础概念mmap内存映射原理mmap和常规文件操作的区别mmap优点总结mmap相关函数mmap使用细节


回到顶部

mmap基础概念

mmap是一种内存映射文件的方法，即将一个文件或者其它对象映射到进程的地址空间，实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。实现这样的映射关系后，进程就可以采用指针的方式读写操作这一段内存，而系统会自]]></description><category></category></item></channel></rss>