自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

转载 Linux下常用I/O模型

loading...平凡的世界 »Linux » Linux下常用I/O模型Linux下常用I/O模型发布时间:March 5, 2012分类:Linux《Typecho中文验证码Captcha插件》《POSIX线程不安全函数》简介Linux异步I/O是Linux内核中提供的一个相当新的增强。它是2.6版本内核的一个标准特性,异步非阻

2013-06-22 19:31:03 890

转载 修改一下默认存储数据库的目录。

今天在centos系统里装mysql.想修改一下默认存储数据库的目录。结果修改完后无法启动,百度了相当多的方法。后面针对我的问题,由于SElinux引起的问题的一稿文章。做下记录。修改mysql数据库存储路径之后,一直没法启动,百思不得其解,后来ls -Z查看后。原来是selinux的缘故,chcon -t mysqld_db_t /home/mysqlData 即可。

2012-09-25 19:41:58 677

转载 数据库换名

假如源数据库名称为“srcdb”,目标数据库名称为"trgdb"首先创建目标数据库:create database trgdb;查看源数据库中的所有表名:use information_schema;select table_name from TABLES where TABLE_SCHEMA= ‘srcdb’;针对上面查询出来的表名,依次执行以下

2012-09-22 11:00:12 655

转载 信号(signal)

信号(signal):通知进程已发生某种情况的技术,例如:,某个进程执行了除法操作,其除数为0,则将名为SIGFPF(浮点异常)的信号发送给该进程,进程如何处理信号有三种选择:1.忽略该信号,有些信号表示硬件异常,例如,除以0或者范围进程地址空间以外的单元等,因为这些异常产生的异常后果不确定,所以不推荐使用这种处理方式。2.按照系统默认方式处理,对于除以0的情况,系统默认是终止该进程。

2012-05-16 08:14:09 867

转载 UNIX信号(下)

UNIX信号(下)2011-11-28 11:143     有关信号的系统调用        前面两节已经介绍了有关信号的大部分知识。这一节我们来了解一下这些系统调用。其中,系统调用signal是进程用来设定某个信号的处理方法,系统调用 kill是用来发送信号给指定进程的。这两个调用可以形成信号的基本操作。后两个调用pause和alarm是通过信号实现的进程暂

2012-05-16 08:13:10 517

转载 UINX 信号(上)

信号机制也是进程之间相互传递消息的一种方法,但作为进程间通信来介绍是不合适的。信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实 质和使用很象中断。所以,信号可以说是进程控制的一部分。这里将它单独作为一章,是因为它有独特和重要的作用。下面我们就来介绍信号。1    信号的基本概念        本节先介绍信号的一些基本概念,然后给出一些基本的信号类型和信号对应的事件。基

2012-05-16 08:11:11 663

转载 socket设置为非阻塞方式&阻塞方式

1. 在linux C中可以将socket设置为非阻塞方式,代码:  int cflags = fcntl(socket_df,F_GETFL,0);  fcntl(socket_df,F_SETFL, cflags|O_NONBLOCK); 当然也可以将socket设置为阻塞方式,代码:  int cflags = fcntl(socket_df,F_GETFL,0);  f

2012-04-18 08:07:05 837

转载 3种地址的介绍

要过年了,发个年终总结贴,只是个人理解,不包正确哈。本贴涉及的硬件平台是X86,如果是其它平台,嘻嘻,不保证能一一对号入座,但是举一反三,我想是完全可行的。一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插在

2012-04-10 13:05:04 682

转载 LINUX系统中动态链接库的创建与使用

LINUX系统中动态链接库的创建与使用   雨亦奇   大家都知道,在WINDOWS系统中有很多的动态链接库(以.DLL为后缀的文件,DLL即Dynamic   Link   Library)。这种动态链接库,和静态函数库不同,它里面的函数并不是执行程序本身的一部分,而是根据执行程序需要按需装入,同时其执行代码可在多个执行程序间共享,节省了空间,提高了效率,具备很高的灵活性

2012-03-17 21:17:53 604

转载 tcp通信事例

这里我们用前面所介绍的基础知识编写一个完整的TCP客户服务器程序示例。我们要实现的是一个回射服务器:1)客户从标准输入读入一行文本,并发送给服务器2)服务器从网络输入读入这行文本,并回射给客户3)客户接受到回射文本后,将其显示在标准输出上。tcp服务器源码:#includestdio.h>#includestdlib.h>#include

2012-03-14 12:24:04 1406

转载 getopt()与 getopt_long();

Linux下很多程序甚至那些具有图形用户界面(graphical user interface,GUI)的程序,都能接受和处理命令行选项。对于某些程序,这是与其他程序或用户进行交互的主要手段。具有可靠的复杂命令行参数处理 机制,会使得您的应用程Linux下很多程序甚至那些具有图形用户界面(graphical user interface,GUI)的程序,都能接受和处理命令行选项

2012-03-10 00:10:54 846

转载 makefile 中 $@ $^ %< 使用

这篇文章介绍在LINUX下进行C语言编程所需要的基础知识。在这篇文章当中,我们将会学到以下内容:源程序编译Makefile的编写程序库的链接程序的调试头文件和系统求助1.源程序的编译在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器。 下面我们以一个实例来说明如何使用gcc编译器。假设我们有下面一个非

2012-03-08 13:39:52 140978 2

转载 查看进程绑定cpu

ps -eo pid,args,psr

2012-03-05 21:08:50 2109

转载 一个通用的makefile

我们在Linux环境下开发程序,少不了要自己编写Makefile,一个稍微大一些的工程下面都会包含很多.c的源文 件。如果我们用gcc去一个一个编译每一个源文件的话,效率会低很多,但是如果我们可以写一个Makefile,那么只需要执行一个make就OK了,这 样大大提高了开发效率。但是Makefile的语法规则众多,而且缺乏参考资料,对于初学者来说,写起来还是有一定的难度,往往令很多人

2012-03-05 18:54:27 852

转载 字符编码笔记:ASCII,Unicode和UTF-8

作者: 阮一峰日期: 2007年10月28日今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得

2012-03-03 22:43:29 560

转载 gprof的使用

最容易忘记的问题:gprof必须在程序正常退出了之后才能生成统计数据。所以如果自己的程序是一个长期运行服务的话,必须使用signal捕获一个信号,然后安全退出,这个问题之前我没有发现,结果调试了几个小时,包括strace等各种手段都试过了,无果。最后才在文档上看到的。郁闷啊。编译开关:我用的是cmake, 所以我在编译和链接上分别加上-pg

2012-03-02 21:01:09 8622

转载 在Linux中,如果要让进程在后台运行

在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了:  $ ./test.sh &  [1] 17208  $ jobs -l  [1]+ 17208 Running ./test.sh &  对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然后使用bg命令将停止的作业

2012-01-15 16:51:58 562

转载 awk 手册

awk 手册  简体中文版由bones7456 (bones7456@gmail.com)整理.原文:应该是 http://phi.sinica.edu.tw/aspac/reports/94/94011/ 但是原文很乱.说明:之前也是对awk几乎一无所知,无意中看到这篇文章,网上一搜,居然没有像样的简体中文版.有的也是不怎么完整,或者错误一大堆的.于是就顺手整理了下这篇文章.通过

2012-01-08 19:04:09 690

转载 sed学习笔记

sed学习笔记作者:Jims of 肥肥世家Table of Contents1. Sed简介2. 定址3. Sed命令4. 选项5. 元字符集6. 实例7. 脚本8. 小技巧1. Sed简介sed是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern sp

2012-01-08 18:14:53 367

转载 sysctl优化linux网络

1, 优化网络设备接收队列   net.core.netdev_max_backlog=3000    该文件表示在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。    默认值:Red Hat Linux release 9 (Shrike)默认为300            rhel5 默认为1000    建议值为30002,

2012-01-06 20:43:33 515

转载 用gdb调试core dump文件

转载自:http://blog.chinaunix.net/u2/83905/showart_2134570.html在Unix系统下,应用程序崩溃,一般会产生core文件,如何根据core文件查找问题的所在,并做相应的分析和调试,是非常重要的。什么是Core Dump?Core的意思是内存, Dump的意思是扔出来, 堆出来.开发和使用Unix程序时, 有时程序莫名其妙的down了, 却没有任何

2012-01-02 22:44:54 649

原创 素数

#include #include using namespace std;#define MAX 300000int fun(int x){    for(int i = 2; i     {        if(x%i == 0)

2011-10-09 22:10:01 336

原创 AddBuffer

#include //#include #include int AddBuffer(char** dest,const char*src,int* left,int len){    int i = 0;    if(*left     {

2011-09-21 21:59:37 760

转载 查看当前操作系统内核信息

# uname -aLinux localhost.localdomain 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:39 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux(查看当前操作系统内核信息)#

2011-09-21 20:42:32 1650

转载 函数inet_addr和inet_ntoa

Posted on 2010-08-13 17:46 kongkongzi 阅读(377)评论(0)  编辑 收藏引用 所属分类:network programminginet_addr 将"数字+句点"的格式的IP地址转换到unsigned long中,返回

2011-09-20 12:41:39 1173

转载 将 Linux 应用程序移植到 64 位系统上

Linux 是可以使用 64 位处理器的跨平台操作系统之一,现在 64 位的系统在服务器和桌面端都已经非常常见了。很多开发人员现在都面临着需要将自己的应用程序从 32 位环境移植到 64 位环境中。随着 Intel® Itanium® 和其他 64 位处理器的引入,使软件针对 6

2011-08-31 20:28:19 433

转载 __asm____volatile__GCC的内嵌汇编语法AT&T汇编语言语法

__asm____volatile__GCC的内嵌汇编语法AT&T汇编语言语法2006年11月16日06:33 来源:ChinaUnix博客 作者:Dave DeWalt 编辑:周荣茂 评论:0条本文Tag: Linux程序开发     AT&T AS

2011-08-30 19:45:56 1235

转载 海量数据处理面试题

第一部分、十道海量数据处理面试题1、海量日志数据,提取出某日访问百度次数最多的那个IP。此题,在我之前的一篇文章算法里头有所提到,当时给出的方案是:IP的数目还是有限的,最多2^32个,所以可以考虑使用hash将ip直接存入内存,然后进行统计。再详细介绍下

2011-08-27 22:19:59 1096

转载 ON DUPLICATE KEY UPDATE

MySQL 当记录不存在时插入,当记录存在时更新MySQL 当记录不存在时插入,当记录存在时更新网上基本有三种解决方法。第一种:示例一:插入多条记录假设有一个主键为 client_id 的 clients 表,可以使用下面的语句:INS

2011-08-25 14:51:04 34961

转载 MyISAM InnoDB 区别

时间:2011-03-26 12:42 来源:PHP100中文网 作者:网络 点击: 5007 次 【字号:大中 小】MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的

2011-08-23 16:38:44 708

转载 关于共享内存的,有时间看下

linux-c: ipc_共享内存分类: C/C++ 2006-11-05 12:45 1835人阅读 评论(0)收藏 举报简介共享内存是进程间通讯的一种机制,在数据量较大时,比较合适。每个共享内存对象都有一个shmid_ds结构体与之对应

2011-08-19 16:04:28 1005

转载 又搜了篇文章..

getrlimit2008-12-10 19:48  为了支持多用户同时登录以及多个应用连接,BSD UNIX系统给系统管理员提供了控制系统资源的许多方法。这种资源限制包括CPU时间、内存使用量以及磁盘使用量。资源控制允许你调整系统到最佳的使用率。UNIX的早期版本中

2011-08-19 15:46:06 520

转载 网络编程: epoll

epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听

2011-08-15 19:53:05 630

转载 学习了LINUX下用C语言遍历文件夹,一些心得

Linux下C语言遍历文件夹[转]2010-11-26 16:08:03|  分类:linux |  标签:|字号大中小 订阅学习了LINUX下用C语言遍历文件夹,一些心得struct dirent中的几个成员:d_type:4表示为目录,

2011-08-03 16:43:54 11635

原创 如何修改RADHAT 的用户密码

由于最近比较忙,忘了自己的RADHAT虚拟机的用户密码了,再网上搜了下修改用户名的密码,发现还很好用。具体方法如下: GRUB:在引导装载程序菜单上,键入 [e] 来进入编辑模式。你会面对一个引导项目列表。查找其中类似以下输出 的句行: kernel /vmlinuz-2.4.18-0.4 ro root=/dev/hda2 按箭头键直到这一行被突出显示,然后按 [e]。你现在可在文本结尾

2009-05-22 22:53:00 1603

空空如也

空空如也

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

TA关注的人

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