摘要: u wondered why certain programs are located under /bin, or /sbin, or /usr/bin, or /usr/sbin?For example, less command is located under /usr/bin directory. Why not /bin, or /sbin, or /usr/sbin? What is the different between all these directories?In this article, let us review the Linux filesystem str 阅读全文
posted @ 2012-07-26 17:13 戊辰岁终 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 分布式软件系统(Distributed Software Systems),是支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式操作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等简介 分布式操作系统负责管理分布式处理系统资源和控制分布式程序运行。它和集中式操作系统的区别在于资源管理、进程通信和系统结构等方面。 分布式程序设计语言用于编写运行于分布式计算机系统上的分布式程序。一个分布式程序由若干个可以独立执行的程序模块组成,它们分布于一个分布式处理系统的多台计算机上被同时执行。它与集中式的程序设计语言相比有三个特点:.. 阅读全文
posted @ 2012-07-26 17:05 戊辰岁终 阅读(275) 评论(0) 推荐(1) 编辑
摘要: 不允许任何中间变量来交换两个变量的值:例如num1=5,num2=6其实这一题也是很简单的:提供两种方法:1.使用普通运算num1 +=num2;//!保留2个数的和num2 = num1 - num2;//! num2此时的值是之前num1的值num1= num1 - num2;//!此时的num1是两个数之和减去之前num1值即num2值2.使用位运算:num1 = num1 ^ num2;num2 = num1 ^ num2;num1 = num1 ^ num2;献给自己:告诫自己不要小看任何一题,认真思考,玄机万千 阅读全文
posted @ 2012-07-26 15:57 戊辰岁终 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 赋值操作赋值语句前面已经说明,要访问内存,就需要相应的地址以表明访问哪块内存,而变量是一个映射,因此变量名就相当于一个地址。对于内存的操作,在一般情况下就只有读取内存中的数值和将数值写入内存(不考虑分配和释放内存),在C++中,为了将一数值写入某变量对应的地址所标识的内存中(出于简便,以后称变量a对应的地址为变量a的地址,而直接称变量a的地址所标识的内存为变量a),只需先书写变量名,后接"=",再接欲写入的数字(关于数字,请参考《C++从零开始(二)》)以及分号。如下:a = 10.0f; b = 34;由于接的是数字,因此就可以接表达式并由编译器生成计算相应表达式所需的代 阅读全文
posted @ 2012-07-26 15:45 戊辰岁终 阅读(824) 评论(0) 推荐(0) 编辑
摘要: 1 #include <stdio.h> 2 #define NUM (sizeof(arr) / sizeof(arr[0])) 3 4 int arr[] = { 1, 2, 3, 4, 5, 6, 7 }; 5 6 int main() 7 { 8 int i; 9 10 for( i = -1; i <= ( NUM - 2 ); i++) 11 { 12 printf("%d\n",arr[i+1]); 13 } 14 15 return 0; 16 } ... 阅读全文
posted @ 2012-07-26 15:41 戊辰岁终 阅读(237) 评论(0) 推荐(0) 编辑
摘要: /*这个例子主要是考虑到a++和++a的存储问题;我们知道,对于a++是先将a给表达式再++;那么这就是需要一个tmp空间来保存++之前的a!!!但是对于++a是不需要的,因为先执行++,那么就是直接改a空间内容就好了!那么我们下面的问题就是这样!*/#include<stdio.h> intmain(){inta=4;/*解释:下面的答案在Linux和VC下测试是9;如果这样的形式不好看,那么写成这样就可以了:a=a+(a++);那么由于a++是先把数放到tmp空间再++;所以,执行顺序:把后面a放进tmp空间,然后a的存储空间数++,那么现在a中是5,tmp中是4最后a=a+t 阅读全文
posted @ 2012-07-26 12:20 戊辰岁终 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 成为一名精通 Linux 程序设计的高级程序员一直是不少朋友孜孜以求的目标。根据中华英才网统计数据,北京地区 Linux 程序员月薪平均为 Windows 程序员的 1.8 倍、Java 程序员的 2.6 倍, Linux 程序员年终奖金平均为 Windows 程序员的 2.9 倍。同时数据显示,随着工作经验的增长, Linux 程序员与 Windows 程序员的收入差距还有扩大的趋势。Denis 认为,要学好 Linux 环境下的编程,关键是要看对、选对、学会正确的书籍。可以说,如果你选对了 Linux编程的经典书籍,配合你在程序设计工作中的刻苦钻研,成为一名精通 Linux 程序设计的高级 阅读全文
posted @ 2012-07-26 12:13 戊辰岁终 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 关于Linux僵尸进程,一般是由于子进程结束的时候,会有一些资源没有释放掉,直到父进程结束或者由父进程去处理它才可以! 僵尸进程就是子进程已经结束,但是父进程没有处理的进程! 父进程可以使用waitpid,wait等来处理僵尸进程! if 父进程不幸在子进程之前“死了”,那么子进程就交由init( pid == 1 )进程去管理~ 我们可以测试以下: 具体的程序解释看代码的注释![cpp] view plaincopyprint?#include<stdio.h> #include<stdlib.h> #include<sys/types.h> intmai 阅读全文
posted @ 2012-07-26 12:06 戊辰岁终 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 关于pthread_cond_wait()的解释:这个函数是比较难以理解的~我们且看:pthread_cond_wait()的内部的过程是什么?:就是“解锁”->“sleep”->“加锁”由上图,我们可以知道:ifA先Read data,B先锁住M,那么在while(empty(Q)),时候,发现队列是空的,那么pthread_cond_wait() 这个时候需要做的是:解除M锁!(那么A那边就可以加锁了,可以执行下面的动作。。。),然后进入一个Sleep睡眠状态,所以不会消耗CPU,这正是我们需要的结果!(if不是,那么仅仅要互斥量就可以了不是吗?呵呵~)...对于A这边处理OK 阅读全文
posted @ 2012-07-26 12:05 戊辰岁终 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1、选择合适的算法和数据结构应该熟悉算法语言,知道各种算法的优缺点,具体资料请参见相应的参考资料,有很多计算机书籍上都有介绍。将比较慢的顺序查找法用较快的二分查找或乱序查找 法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,都可以大大提高程序执行的效率。.选择一种合适的数据结构也很重要,比如你在一堆随机存 放的数中使用了大量的插入和删除指令,那使用链表要快得多。数组与指针语句具有十分紧密的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理 解。对于大部分的编译器,使用指针比使用数组生成的代码更短,执行效率更高。但是在Keil中则相反,使用数组比使用的指针生成的代码更短。。2 阅读全文
posted @ 2012-07-26 11:20 戊辰岁终 阅读(199) 评论(0) 推荐(0) 编辑
摘要: //!> 注意:binary 是 gdb_//!> 注意:() 里面也是可以的//!> 应用最频繁的0.-g//!> 编译加上-g可以将代码编入,否则有些指令无效1. file gdb_//!> 将binary导入2.l( list )//!> 显示代码段//!> 注意前提是将代码编译进去,也就是编译是加上-g3.r( run )//!> run4.c( continue )//!> 继续run直到下一个断点处5.b//!> 增加断点,后面参数是行数就可以了//!> 参数也可以是函数名称( 设置在第一个执行代码行处 )6.inf 阅读全文
posted @ 2012-07-26 11:11 戊辰岁终 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 本文写给主要工作在Windows操作系统下而又需要开发一些跨平台软件的程序员朋友,以及程序爱好者。GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调试工作。命令解释示例file <文件名>加载被调试的可执行程序文件。因为一般都在被调试程序所在目录下执行GDB,因而文本名不需要带路径。(gdb) file gdb-samplerRun的简写,运行被调试的程序。如果此前没有下过断点,则执行完整个程序;如果有断点,则程序暂停在第一个可用断点处 阅读全文
posted @ 2012-07-26 11:06 戊辰岁终 阅读(193) 评论(0) 推荐(0) 编辑