linux系统
updoing
用六十秒創造六十一秒的奇跡!
展开
-
跟我一起写Makefile:MakeFile介绍
makefile 介绍make命令执行时,需要一个 makefile 文件,以告诉make命令需要怎么样的去编译和链接程序。首先,我们用一个示例来说明makefile的书写规则。以便给大家一个感性认识。这个示例来源于gnu的make使用手册,在这个示例中,我们的工程有8个c文件,原创 2011-07-28 13:59:48 · 622 阅读 · 0 评论 -
gsoap开发webservice
gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多。绝大多数的C++web服务工具包提供一组API函数类库来处理特定的SOAP数据结构,这样就使得用户必须改变程序结构来适应相关的类库。与之相原创 2011-10-12 20:14:42 · 810 阅读 · 0 评论 -
linux进程调度方法(SCHED_OTHER,SCHED_FIFO,SCHED_RR)
linux内核的三种调度方法:1,SCHED_OTHER 分时调度策略,2,SCHED_FIFO实时调度策略,先到先服务3,SCHED_RR实时调度策略,时间片轮转 实时进程将得到优先调用,实时进程根据实时优先级决定调度权值,分时进程则通过nice和counter值决定权值,nice越小,counter越大,被调度的概率越大,也就是曾经使用了cpu最少的进程将会得到优先调度原创 2011-11-18 11:20:45 · 456 阅读 · 0 评论 -
struct--tcphdr
sk_buff->tcphdr/usr/src/linux-2.6.19/include/linux/tcp.hstruct tcphdr { __be16 source; __be16 dest; __be32 seq; __be32 ack_seq;#if defined(__LITTLE_ENDIAN_BITFIELD)原创 2011-11-21 10:30:40 · 658 阅读 · 0 评论 -
struct--iphdr -- IP头部
sk_buff->iphdr/usr/src/linux-2.6.19/include/linux/ip.hstruct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) __u8 ihl:4, version:4;#elif defined (__BIG_ENDIAN_BITFIELD)原创 2011-11-21 12:28:55 · 576 阅读 · 0 评论 -
进程与线程的区别
线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源(3)线程是处理器调度的基本单位,但进程不是.4)二者均可并发执行. 进程和线程都是由操作系统所体会的程序运行的基本单元,原创 2011-11-25 18:19:47 · 375 阅读 · 0 评论 -
公网/内网IP分配及NAT地址转换协议
公网IP/内网IP: 在TCP/IP协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下:10.0.0.0/8:10.0.0.0~10.255.255.255172.16.0.0/12:172.16.0.0~172.31.255.255192.168.0.0/16:192.168.0.0~192.168.255.255 使用保留地址的网络只能在内部进行通信,原创 2011-12-02 17:55:28 · 2215 阅读 · 0 评论 -
syslog(),openlog(),closelog()
这里面的三个函数openlog, syslog, closelog是一套系统日志写入接口。另外那个vsyslog和syslog功能一样,只是参数格式不同。 原理:通常,syslog守护进程读取三种格式的记录消息。此守护进程在启动时读一个配置文件。一般来说,其文件名为/etc/syslog.conf(注释:if you want to redirect log to other pl原创 2012-04-09 18:58:51 · 1671 阅读 · 0 评论 -
Libxml/tree.h:No such file or directory错误
1、在Xcode菜单 Project->Edit Project Settings的Build标签,搜索Header Search Path,添加/usr/include/libxml2即可。2、在linux里编译时,应该指定-I选项到你安装libxml2的include目录下的libxml2的目录中。 如我的是安装在/usr/local/目录下,我编译时-I/usr原创 2012-04-11 10:15:52 · 6510 阅读 · 0 评论 -
fedora syslog系统日志
系统日志也就是记录系统活动信息的文件日志文件在 /var/log下,该目录下不仅保存系统日志,还有其他服务的日志记录。执行命令dmesg 可以查看系统启动时的信息执行命令lastlog 查看系统用户最后登录信息文件 secure 中记录用户登录主机的信息文件 messages 记录大量的系统信息,包括系统的各种日常活动和服务的信息,也包括系统出现的错误信息文件 wtmp原创 2012-04-12 14:09:31 · 5208 阅读 · 0 评论 -
pthread_mutex_init
头文件:#include 函数原型: int pthread_mutex_init(pthread_mutex_t *restrict mutex,const pthread_mutexattr_t *restrict attr); pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; 该函数用于C函数的多线程编程中,原创 2012-04-19 15:26:47 · 1316 阅读 · 0 评论 -
sync、fsync、fdatasync、fflush函数
传统的UNIX实现在内核中设有缓冲区高速缓存或页面高速缓存,大多数磁盘 I/O都通过缓冲进行。当将数据写入文件时,内核通常先将该数据复制到其中一个缓冲区中,如果该缓冲区尚未写满,则并不将其排入输出队列,而是等待其写满 或者当内核需要重用该缓冲区以便存放其他磁盘块数据时,再将该缓冲排入输出队列,然后待其到达队首时,才进行实际的I/O操作。这种输出方式被称为延迟写 (delayed write)(Ba原创 2012-07-05 19:35:26 · 3631 阅读 · 0 评论 -
Linux 内存
# cat /var/log/messagesOut of memory: Killed process xxxxx, UID xx, (httpd).httpd invoked oom-killer:klogd invoked oom-killerOOM(Out Of Memory,内存不足)如果某个程序发生了内存泄漏,那么一般情况下系统就会试用OOM机制将其进程Kill原创 2012-06-29 14:57:08 · 2605 阅读 · 0 评论 -
gSOAP简单多线程服务器程序
一 gSOAP需要的头文件://gsoap ns service name: calc//gsoap ns service style: rpc//gsoap ns service encoding: encoded//gsoap ns service names原创 2011-10-12 19:49:07 · 3953 阅读 · 1 评论 -
gSOAP简单使用例子
一.系统环境linux操作系统kernel2.4.2,安装gsoap2.6到目录/usr/local/gsoap二.gSOAP的简要使用例子下面是一个简单的例子,实现一个加法运算的WebService,具体功能是cli端输入num1和num2,server端返回一个n原创 2011-10-12 19:48:00 · 3300 阅读 · 1 评论 -
linux下安装apache详解
下面是linux下安装apache的完整代码,系统是redhat5.5下载httpd-2.2.6.tar.bz2 把httpd-2.2.6.tar.bz2放到/soft 下[root@localhost ~]#cd /soft[root@localhost soft原创 2011-10-13 11:13:37 · 595 阅读 · 0 评论 -
跟我一起写Makefile:概述
概述什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的集成开发环境(integrated development environment, IDE)都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makef原创 2011-07-28 12:34:43 · 456 阅读 · 0 评论 -
跟我一起写Makefile:书写规则
书写规则规则包含两个部分,一个是依赖关系,一个是生成目标的方法。在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让make知道你的最终目标是什么。一般来说,定义在Makefile中的目标可能原创 2011-07-29 12:35:45 · 519 阅读 · 0 评论 -
第 1 章 多线程基础介绍
多线程一词可以解释为多个控制线程或多个控制流。虽然传统的 UNIX 进程包含单个控制线程,但多线程 (multithreading, MT) 会将一个进程分成许多执行线程,其中每个线程都可独立运行。本章介绍了一些多线程的术语和概念及其所产生的益处。定义多线程术语表 1原创 2011-09-06 13:03:34 · 384 阅读 · 0 评论 -
第 3 章 线程属性
前面一章介绍了使用缺省属性创建线程的基本原理。本章论述如何在创建线程时设置属性。注 – 只有 pthreads 使用属性和取消功能。本章中介绍的 API 仅适用于 POSIX 线程。除此之外,Solaris 线程和 pthreads 的功能大致是相同的。属原创 2011-09-06 13:15:36 · 364 阅读 · 0 评论 -
第 2 章 基本线程编程
本章介绍 POSIX 线程的基本线程编程例程。本章介绍缺省线程(即,具有缺省属性值的线程),这是多线程编程中最常用的线程。本章还介绍如何创建和使用具有非缺省属性的线程。本章介绍的 POSIX 例程具有与最初的 Solaris 多线程库相似的编程接口。线程库下面简要论述原创 2011-09-06 13:10:25 · 499 阅读 · 0 评论 -
gcc和g++区别
gcc和g++都是GNU(组织)的一个编译器。 误区一:gcc只能编译c代码,g++只能编译c++代码 两者都可以,但是请注意: 1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的,两者都会认为是c++程序,注意,虽然c++是c的原创 2011-08-10 10:19:13 · 367 阅读 · 0 评论 -
创建多线程
//ThreadHelper.h/*--License(在这里设置版权或许可等信息)--自由无限制*//*\-Version(在这里记录版本等信息)--1.00--publish from http://www.loveunix.net(非正式发布)转载 2011-09-17 10:47:24 · 1138 阅读 · 1 评论 -
在linux下查看一个进程它有多少个线程是用什么命令?
ps -ef f 用树形显示进程和线程,比如说我想找到proftp现在有多少个进程/线程,可以用 $ ps -ef f | grep proftpd nobody 23117 1 0 Dec23 ? S 0:00 proftpd: (accepting con转载 2011-09-17 10:51:55 · 1162 阅读 · 0 评论 -
Mysql长连接
1.修改my.cnf的wait_timeout和interactive_timeout是不解决问题的,因为即使你设置为0系统启动后也会给你修改为12.解决问题的方法只有一个,连接时配置为重新连接,在做数据库操作之前做一下myslq_ping,因为本人用的mysqlpp开发包,原创 2011-09-19 11:17:26 · 2381 阅读 · 0 评论 -
sigprocmask系统调用
功能描述:设定对信号屏蔽集内的信号的处理方式(阻塞或不阻塞)。用法:#include int sigprocmask(int how, const sigset_t *set, sigset_t *oldset);参数:how:用于指定信号修改的方式,可能选择原创 2011-09-22 18:10:27 · 398 阅读 · 0 评论 -
linux解压 tar命令
tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存原创 2011-09-27 10:29:10 · 439 阅读 · 0 评论 -
Linux的环境变量
一、Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1、永久的:需要修改配置文件,变量永久生效。 2、临时的:使用export命令声明即可,变量在关闭shell时失效。二、设置变量的三种方法1、在/etc原创 2011-09-27 10:26:18 · 349 阅读 · 0 评论 -
Linux重启网卡的方法
重启网卡的几种方法:一、network利用root帐户# service network restart二、ifdown/ifup# ifdown eth0# ifup eth0三、ifconfig# ifconfi原创 2011-09-29 13:42:29 · 2713 阅读 · 0 评论 -
xshell 3.0中文乱码最终的解决方案
在使用linux的终端工具SecureCRT或者是Xshell的时候,每次提交SVN想输入中文日志的时候总是输不了中文。或者提示svn: Can't convert string from 'UTF-8' to native encoding (解决的办法也是export LANG="zh_CN.UTF-8")svn ci -m "" 这时候两个引号之间就是没有办法输入中文。后来原创 2013-08-05 13:58:52 · 1533 阅读 · 0 评论