- 博客(10)
- 资源 (2)
- 收藏
- 关注
转载 linux共享内存
/*共享内存允许两个或多个进程进程共享同一块内存(这块内存会映射到各个进程自己独立的地址空间) 从而使得这些进程可以相互通信。 在GNU/Linux中所有的进程都有唯一的虚拟地址空间,而共享内存应用编程接口API允许一个进程使 用公共内存区段。但是对内存的共享访问其复杂度也相应增加。共享内存的优点是简易性。 使用消息队列时,一个进程要向队列中写入消息,这要引起从用户地址空间向内核地
2013-01-21 15:22:54 321
转载 经典HASH函数
1 概述链表查找的时间效率为O(N),二分法为log2N,B+ Tree为log2N,但Hash链表查找的时间效率为O(1)。设计高效算法往往需要使用Hash链表,常数级的查找速度是任何别的算法无法比拟的,Hash链表的构造和冲突的不同实现方法对效率当然有一定的影响,然 而Hash函数是Hash链表最核心的部分,本文尝试分析一些经典软件中使用到的字符串H
2013-01-15 10:38:07 407
转载 函数getopt(),及其参数optind
getopt被用来解析命令行选项参数。#include extern char *optarg; //选项的参数指针 extern int optind, //下一次调用getopt的时,从optind存储的位置处重新开始检查选项。 extern int opterr, //当opterr=0时,getopt不向stderr输出错误信
2013-01-15 10:09:45 442
转载 stat函数与S_宏
stat函数讲解:表头文件: #include #include 定义函数: int stat(const char *file_name, struct stat *buf);函数说明: 通过文件名filename获取文件信息,并保存在buf所指的结构体stat中返回值: 执行成功则返回0,失败返回-1,错误代码存于errno错误代码:ENOENT 参数file_
2013-01-15 10:01:17 666
原创 程序中调用一个可执行文件,防止小部分程序down掉导致整个程序down掉
1 #ifdef HAVE_CONFIG_H 2 #include 3 #endif 4 5 #include 6 #include 7 #include 8 #include string.h> 9 #include 10 11 int main(int argc, char *argv[]) 12 { 13 //以NULL结尾的字符串数
2013-01-12 16:23:48 398
原创 C语言中mysql查询
//MYSQL_RES保存查询结构 MYSQL_RES* result_ = NULL; //对mysql数据库进行查询操作: MYSQL_ROW row; char query_sql[1024] = "select *from db.table where (wb_mid ='"; //构建查询sql语句 strcat(q
2013-01-11 10:03:56 462
转载 static作用
在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global variable
2013-01-08 23:21:27 252
转载 汇编学习笔记
小弟初学汇编。刚学到寄存器和寻址方式。整理了点笔记,拿出来给跟我同样初学的弟兄分享。一、寄存器总共有14个16位寄存器,8个8位寄存器通用寄存器: 数据寄存器: AH(8位) AL(8位) AX(16位) (AX和AL又称累加器) BH(8位) BL(8位) BX(16位) (BX又称基址寄存器,唯一作为存储器指针使用寄存器) CH(8位
2013-01-03 22:01:40 401
原创 MINXI笔记之消息传递
/*===========================================================================* * sys_call * *===========================================================================*/PUBLIC int sys_
2013-01-03 15:16:40 650
原创 MINIX笔记之enqueue与dequeue
PRIVATE void enqueue(rp)register struct proc *rp; /* this process is now runnable */{/* Add 'rp' to one of the queues of runnable processes. This function is * responsible for inserting a proces
2013-01-02 14:00:37 2944
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人