摘要:一. 基础环境 0. 安装virtualbox下载最新virtualbox (4.2),安装1. 安装ubuntu12.04下载ubuntu-12.04的dvd安装iso,搜索下载2. virtualbox安装ubuntu时候,分配100G,的动态盘3. 装好ubuntu后, 安装virtualbox增强功能,重启4. 设置共享文件夹,自动挂载+固定分配,重启5. sudo adduser xxx vboxsf,设置了用户加到vboxsf组,获取权限,重启6. 修改ubuntu源,网易很给力:deb http://mirrors.163.com/ubuntu/ precise main re.
阅读全文
摘要:1. E431: Format error in tags file - 错误 可能因为生成的标识符太长,vim不支持那么长,限定类型,重新生成即可.ctags --languages=Asm,c,c++,java -R
阅读全文
摘要:转载地址:http://blog.csdn.net/fbjwying2/article/details/6283696一、GSM信令流程GSM 系统使用类似OSI协议模型的简化协议,包括物理层(L1)、数据链路层(L2)和应用层(L3)。L1是协议模型最底层,提供物理媒介传输比特流所需的 全部功能。L2保证正确传递消息及识别单个呼叫。在GSM系统中,无线接口(Um)上的L1和L2分别是TDMA帧和LAPDm协议。在网络侧,Abis 接口和A接口使用的L1均为E1传输方式,L2分别为LAPD和MTP协议。在Um接口,MS每次呼叫时都有一个L1和L2层的建立过程,在此基础上再与 网络侧建立L3上的
阅读全文
摘要:有个项目用到Ruby语言,SourceInsight默认不支持,探索出支持的方法,如下:1. SourceInsight官网,获取Ruby语言支持http://www.sourceinsight.com/public/,下载即可2. SourceInsight的Options->Preferentces菜单,找到Lauguage页,导入刚刚下载的Ruby.CLF文件3. 导入后,双击打开语言属性对话框,修改语言属性:Function修改成:def\w+\([A-Za-z][A-Za-z0-9_]*\)Class修改成:class\w+\([A-Za-z][A-Za-z0-9_]*\)4.
阅读全文
摘要:1、介绍我总是对编译器和语言非常感兴趣,但是兴趣并不会让你走的更远。大量的编译器的设计概念可以搞的任何一个程序员迷失在这些概念之中。不用说,我也曾 今尝试过,但是并没有取得太大的成功,我以前的尝试都停留在语义分析阶段。本文的灵感主要来源于我最近一次的尝试,并且在这一次中我取得一点成就。幸运的是,最近的几年,我参加了一些项目,这些项目给了我在建立编译器上很多有用的经验和观点。另外一件事是,我非常幸运得到LLVM的帮助。对于这个工具,我不知道改怎么去形容它,但是他给我的这个编译器的确带来非常大的帮助。1.1、你为什么要阅读本文你也许想看看我正在做的事情,但是更有可能的是,你也是和我一样对编译器和语
阅读全文
摘要:这里有一个使用bison建立一个简单的计算器的例子:http://www.cs.berkeley.edu/~maratb/cs164/bison.html使用bison和flex工具学习编译原理,远比单独看书然后自己编写一些程序生动的多。这样你就不会在那些复杂的字符处理,正则表达式的处理上浪费精力,最后费尽心力,却没有结果,失去了学习的兴趣。我这里有一个简单的计算器的程序,可以实现加、减、乘、除运算,并支持括号的处理和26个字母作为变量。以前自己使用后缀表达式方式写过一个这样的程序,单单中缀表达式改为后缀表达式就是几百行的代码,反正自己现在还是不知道怎么处理里面复杂的堆栈的(我用了STL的Li
阅读全文
摘要:CodeBlocks + wxWidgets + wxSmith + Plugin,同时跨平台,这样的开发方式,相信一定有你着迷的地方!本文简要说明,如何开发一个CodeBlocks的插件:0. 本文环境Codeblocks-10.05mingw.exe Codeblocks-10.05-src.tar.gz wxPack-2.8.10.06.exe1. 新建工程,类型选择:Code::Blocks plugin2. 填写基本信息,选择wxWidgets版本 2.8.x3. 需要设置的比较重要的变量是 wx和cb,wx这个变量大家都知道是wxWidgets的目录,wxPack安装后,即可得到c
阅读全文
摘要:地址:http://blog.csdn.net/huiyouyongdeyu2011/article/details/6556168AllocConsole Function 为主调进程分配一个新的控制台。 语法 C++ : BOOL WINAPI AllocConsole(void); 参数: 无 返回值:如果函数成功,返回值是非零值;如果函数失败,返回值是零值。 备注: 一个进程仅能关联一个控制台,所以该函数在主调进程已经具有控制台时将会失败。 一个进程可以使用 FreeConsole 函数来释放与之关联的控制台,之后它就可以调用该函数来创建一个新的控制台或使用 AttachConsole
阅读全文
摘要:1. 一个wxWidgets的基本结构是:一个App类+一个Frame类,代码如:class MyApp: public wxApp{public: bool OnInit();};IMPLEMENT_APP(MyApp)2. IMPLEMENT_APP(MyApp) 这个宏包含了入口,抽象了不同平台入口的差异,分析如下:IMPLEMENT_APP展开如下:#define IMPLEMENT_APP(appname) \ IMPLEMENT_APP_NO_THEMES(appname) \ IMPLEMENT_WX_THEME_SUPPORTIMPLEMENT_APP_NO_THEMES展开如
阅读全文
摘要:---- CodeBlocks+wxWidgets简介1. CodeBlocks开源、稳定、漂亮、跨平台、支持插件、更新及时,少有的轻量级跨平台IDE.2. wxWidgets开源、稳定、历史悠久、免费、GUI特性全面、更新及时,也是少有的跨平台GUI框架.3. CodeBlocks用wxWidgets写成,原生支持wxWidgets开发,同时提供了所见即所得的GUI可视化开发工具.4. 轻量级、快速、跨平台,CodeBlocks+wxWidgets的开发组合,非常适合小项目、小工具使用.---- CodeBlocks安装1. 官网 http://www.codeblocks.org/2. 在
阅读全文
摘要:个人总结,计算机专业从业者,尤其是工程师,需要掌握以下知识和技术:1. 多多益善的数学功底毋庸置疑,逻辑思维的基础,可能某些人天生适合逻辑思维,但是经过长时间的数学思维锻炼,逻辑思维一定是底子很好的!要求程度: 第一阶段是够用,接下来是越充实越好!如何训练:不要刻意去看书,去重新学习数学课本,方法是算法驱动,也就是看算法需要的时候再去看对应的数学知识.2. 专业的英文阅读能力当需要研究国外的芯片数据手册或者相关文档或者标准时候,专业的英文阅读能力是相当重要的。这个不必多说!要求程度: 第一阶段还是够用,当然也是越多越好!如何训练:多看、多听,多看包括英文网站,英文文档,多看就是电影咯,这个简单
阅读全文
摘要:Ubuntu转到Windows下开发,虽说还有虚拟机在用,但是Windows下的环境和工具用起来不顺手,寻找Windows平台的终端软件,几乎使用个遍,终于找到可以忍受的了。现总结比较如下:1. 系统cmdipconfig看下IP还可以,其他几乎没法用,相当难用!2. cygwin终端cygwin终端极其简陋,抹杀了cygwin强大的功能。同时支持vim不好,支持鼠标粘贴复制不好。没有多个TAB标签。3. puttyputty本身实际上是不错的,但是不支持多标签哦。4. puttycyg可以作为cygwin的终端,用起来也不错。颜色正确。粘贴复制方便。选项终端。美中不足的是:不支持多标签TAB
阅读全文
摘要:不能上网、网速慢、共享等等需求,使我们不能或者不想使Ubuntu10.04在线安装软件包,而是需要一个本地的更新源。通过apt-mirror工具,我们可以轻松制作官方源的本地镜像,通过本地镜像,我们可以本地安装更新软件.1. 安装apt-mirror工具sudo apt-get install apt-mirror或者下载源码编译,不过推荐apt安装.方法自行摸索.2. 配置apt-mirror工具gksu gedit /etc/apt/mirrors.list清除原有内容,没关系,输入以下内容:set nthreads 20set _tilde 0############## end con
阅读全文
摘要:经常要阅读源码,总结出几个阅读的源码的工具.1. ctags + viUbuntu上可直接安装ctags vimsudo apt-get install ctags vim在源码目录下,用下面的命令生成索引ctags -Rvi -t main类似可以直接阅读,在符号上ctrl+]就可以跳转了.2.source insightwindows上可能用vim ctags有些费劲.source insight非常好用,gui操作即可,功能丰富,当然Ubuntu上也可以使用哦(Wine)3.global有些移动设备上,以上的工具都没有,比如android pad上,这时候html形式的交叉索引就非常好了
阅读全文
摘要:Synergy工具,绝对好玩而且好用,下面我们一步步,搞定一套鼠标键盘同时操作windows和linux双系统,本篇的环境是windows xp和ubuntu9.101.安装工具windows搜索Synergy1.3.1,默认安装即可ubuntuapt-get install synergy2.配置windows端作为服务器,比较方便,下面是配置:打开windows端的Synergy,设置:点击Configure添加两个机器,两个连接,如下:windows和linucos-desktop是主机名,windows系统下,可以通过查看我的电脑看到,ubuntu下,可以使用hostname查看3.使
阅读全文
摘要:--- Step by Step1. sudo apt-get install apache22. sudo apt-get install php53. sudo /etc/init.d/apache2 restart4. sudo apt-get install mysql-server5. sudo apt-get install mysql-admin6. sudo apt-get install libapache2-mod-auth-mysql7. sudo apt-get install php5-mysql8. sudo apt-get install phpmyadmin9
阅读全文