自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

c453787298的专栏

天下有大勇者,猝然临之而不惊,无故加之而不怒,此其所挟持者甚大,而其志甚为远也

  • 博客(30)
  • 收藏
  • 关注

原创 go语言io.pipe的阻塞问题

go

2023-06-15 14:50:20 136

转载 python中os.system()的返回值

python中os.system()的返回值  2013-05-13 16:27:41|  分类: Python学习笔记|举报|字号 订阅最近遇到os.system()执行系统命令的情况,上网搜集了一下资料,整理如下,以备不时之需,同时也希望能帮到某些人。一、python中的 os.system(cmd)的返回值与linux命令返回值(具体参

2014-04-16 14:34:35 6122

转载 linux中信号量的概念和使用

linux中信号量的概念和使用信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念、Linux对信号机制的大致实现方法、如何使用信号,以及有关信号的几个系统调用。 信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实质和使用很象中断。所以,信号可以说是进程控制的一部分。 一、信号的基本概念 

2014-04-16 14:24:20 3514

转载 epoll源码实现分析

epoll源码实现分析[整理]Posted on 2013-08-03 15:30 Apprentice89 阅读(319) 评论(0) 编辑 收藏 epoll用法回顾先简单回顾下如何使用C库封装的3个epoll相关的系统调用。更详细的用法参见http://www.cnblogs.com/apprentice89/archive/2013/05/06/3063039.htm

2014-04-01 15:25:32 591 1

原创 linux shell中的一些关键字

文件比较运算符-e filename 如果 filename存在,则为真 [ -e /var/log/syslog ]-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]-f filename 如果 filename为常规文件,则为真 [ -f /usr/bin/grep ]-L filename 如果 filename为符号链接,

2014-03-07 15:01:50 2277

原创 shift命令

用于逐渐减少shell参数个数。

2014-02-20 10:45:31 520

转载 python模块subprocess学习

python模块subprocess学习时间 2013-05-08 15:18:00  博客园-原创精华区 原文  http://www.cnblogs.com/GODYCA/archive/2013/05/08/3066870.htmlsubprocess模块介绍subprocess是python创建子进程的工具,其实和c中的fork出一个子进程,然后在子进程中运行e

2014-02-14 15:12:06 479

转载 Linux系统内存消失与slab使用之谜

http://tech.foolpig.com/2012/07/11/linux-memory-slab-inode/Linux系统内存消失与slab使用之谜JUL11Linux系统内存消失与slab使用之谜Filed under: 东写西读 |  上周发现我们的一台应用服务器上面的内存莫名其妙被吃光,查看所有进程所使用的内存实际只占

2014-02-10 17:21:09 10101

转载 typeof关键字

typeof关键字是C语言中的一个新扩展。typeof的参数可以是两种形式:表达式或类型。下面是使用表达式的的例子:    typeof(x[0](1)这里假设x是一个函数指针数组,这样就可以得到这个函数返回值的类型了。如果将typeof用于表达式,则该表达式不会执行。只会得到该表达式的类型。以下示例声明了int类型的var变量,因为表达式foo()是int类型的。由于

2014-01-23 10:09:01 454

原创 shell die

在linux shell中执行命令后加上die命令,执行过程中如果出错会报出相应的原因与行号。如cat /usr/home/test.log || die $?,如果文件不存在,则会报出相应的错误。

2014-01-22 14:36:16 5170

原创 中断、软中断、信号

最近学习了linux关于中断方面的知识,现根据自己的理解,分析三者之间的联系。    中断:     中断更倾向于硬件,外部设备状态变化时发送给cup的一个信号,但是cpu如何捕捉这样的一个信号呢,原来cpu的控制单元会检查在执行前一条指令的过程中是否有中断或异常发生。当捕捉到这样一个信号后,便开始立即执行do_irq()函数,执行相应的中断处理程序(上半部),从cpu开始处理中断至此,c

2014-01-08 17:54:48 1084

原创 python import

一直以来,对python的import都不是太清楚,最近阅读了一篇文章,对于此有了进一步的了解http://blog.sina.com.cn/s/blog_90bc5fc6010159e0.html经过动手测试,发现是import xxx仅仅是将xxx里的模块放在当前命名空间里,当前模块若是再被import其他模块,则不能访问xxx里的模块了,如果想已久可以在其他模块里

2014-01-07 12:57:34 516

原创 linux内核栈

今天的读了一条关于内核栈的文章,收益匪浅,清楚地linux2.4与2.6内核栈的异同:http://www.cnblogs.com/shengge/archive/2011/08/29/2158748.html

2014-01-06 19:15:34 416

原创 linux内核源码情景分析阅读笔记(1)

一直以来都没有养成记录读书笔记的好习惯,导致每次迫切的需要一些知识的时候,又要重新的去温习,虽说之前若是对某项知识已经有所了解,再去温习肯定轻车熟路了,但多少总还要费一番周折的,翻阅资料总归会花些时间的。从今天起记录每天所学到点点滴滴,相信定能积少成多,这样一来可以对学到的东西做个梳理,二来可以做个备忘,方便自己查阅温习。         学习linux内核情景分析已经有段时间了,现在还停留在

2014-01-05 23:43:17 758

转载 进程信号掩码处理

int sigprocmask(int how, const sigset_t *restrict set, sigset_t *restrict oldset);3函数说明一个进程的信号屏蔽字规定了当前阻塞而不能递送给该进程的信号集。sigprocmask()可以用来检测或改变目前的信号屏蔽字,其操作依参数how来决定,如果参数oldset不是NULL指针,那么目前的信号屏蔽字会

2013-12-06 09:38:14 1059

转载 内核进程的堆栈

内核进程的堆栈 [转]每一个进程(包括普通进程和内核进程)的地址空间都分为用户地址空间和内核地址空间两部分,在32位的x86机器上,用户地址空间的范围是0~3G,内核 地址空间的范围是3G~4G.对于不同的进程,其用户地址空间会随着进程不同而不同,但所有进程的内核地址空间则都是一样的。对于内核进程,由于其始终运 行在内核态,所以没有用户地址空间,其对应的tast_struct结构体中的

2013-11-12 17:15:18 547 2

转载 df 和du 的区别 linux磁盘命令详解

df 和du 的区别 linux磁盘命令详解df 命令:通过文件系统中未分配的空间来确定文件系统中已分配空间的大小。例如:如果一个文件系统中有 8192个512-byte 块, 并且4096 个块没有被分配出去,那么已分配的空间就是4096 个512-byte 的块。已分配空间 = 空间总数 - 未分配空间因为基于文件系统总体来计算,所以df 命令是报告文件系统空间使用情况最可

2013-11-08 17:36:24 467

转载 Linux 信号signal处理机制

Linux 信号signal处理机制Posted on 2007-08-30 14:05 OldHawk 阅读(43629) 评论(9) 编辑 收藏信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念、Linux对信号机制的大致实现方法、如何使用信号,以及有关信号的几个系统调用。 信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信

2013-11-05 18:07:29 543

转载 c语言中return与exit的区别

c语言中return与exit的区别Tag:1,exit用于在程序运行的过程中随时结束程序,exit的参数是返回给OS的。main函数结束时也会隐式地调用exit函数。exit函数运行时首先会执行由atexit()函数登记的函数,然后会做一些自身的清理工作,同时刷新所有输出流、关闭所有打开的流并且关闭通过标准I/O函数tmpfile()创建的临时文件。exit是结束一个

2013-11-01 16:56:01 405

原创 python的参数传递

1、 基本数据类型通过拷贝传递参数。       比如:字符串str、整形int2、数组通过引用传递参数。     比如:b[1]                    add(b)3、在传递参数的时候如果将形参也带上,则可以更换参数顺序。      比如:  def add(a,b):return a+b

2013-10-25 14:29:52 500

转载 gcc与g++的区别

1. gcc会把.c文件当做C语言代码编译,把.cpp文件当做C++语言代码编译,而g++则不会像gcc一样对源文件根据扩展名区别对待,即把所有的文件都当成c++源文件。2. 对于编译器g++会调用gcc。对于C++的代码,编译阶段二者是等价的。但是链接阶段,gcc不会主动连接c++的库进行连接。所以一把c++代码都是用g++来链接。3.gcc和g++对宏__cplusplus的处理:实际

2013-10-15 11:38:32 540

转载 C语言位域

为什么要有位域:           数据在存储时并不需要占用一个完整的字节,只需要几个或一个二进制位,为了节省空间,并处理简单,C语言提供了位域。例如:struct bs{int a:8;int b:2;int c:6;};要点:       1. 一个位域必须存储在同一个字节中,不能跨两个字节。如一个字节所剩空间不够存放另一位域时,应从下一单

2013-10-15 11:09:05 674

原创 linux开机启动及其关闭

关闭开机启动:  update-rc.d -f  gdm remove开启开机启动:  update-rc.d gdm defaults

2013-07-05 16:11:43 505

转载 二层交换机

二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。     过程(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;(2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的

2013-05-17 10:36:43 446

原创 C语言随机数

C语言先通过srand()函数产生随机数种子,然后调用rand()来生成一个随机数,因为C语言产生的随机数时伪随机数,并不是真正意义上的随机数,使用的是固定的算法来得到这些随机数,所以如果种子seek相同,每次就会产生同一批随机数。 问题2: 我按照上述方法并不能产生随机数,仅产生公差为3或4的等差数列: #include #include #incl

2013-05-03 13:58:53 596

转载 C++ 重载(overload)、重写(overrride)、重定义(redefine)总结

C++的一些特性好久没使用了,导致有些生疏了,所以查了一些资料,回顾了一下。 先来看几个概念:重载(overload),重写(override,也称覆盖), 重定义(redefine,也称隐藏)(PS:第三个我不确定在英文中是否应该称为redefine,如有问题,留言告知,谢谢)一、重载(overload)指函数名相同,但是它的参数表列个数或顺序,类型不

2013-04-19 13:03:28 599

转载 偷梁换柱虚函数

作 者:安摧时 间:2008-08-31 17:53链 接:http://bbs.pediy.com/showthread.php?t=71775hook类A的第三个函数方法:比较麻烦,但是也是不难弄的。将类A的第三个虚函数指针替换成我们自己定义的地址。如图所示:http://bbs.pediy.com/attachment.php?attachmentid=17704

2012-06-20 00:36:30 286

转载 VC连接mysql

一、下载并完全安装mysql(用VC连接需完全安装)二、新建控制台工程,进行如下设置:1.  菜单:Tools->Options->Directories选:Show directories for: Include files添加:Directories: D:/Program Files/mysql/mysql server5.1/inc

2012-06-20 00:34:26 329

转载 #pragma data_seg

#pragma data_seg在Win16环境中,DLL的全局数据对每个载入它的进程来说都是相同的;而在Win32环境中,情况却发生了变化,DLL函数中的代码所创建的任何对象(包括变量)都归调用它的线程或进程所有。当进程在载入DLL时操作系统自动把DLL地址映射到该进程的私有空间,也就是进程的虚拟地址空间,而且也复制该DLL的全局数据的一份拷贝到该进程空间。也就是说每个进

2012-06-12 01:30:53 374

转载 细说 #pragma pack(n)

在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。例如,下面的结构各成员空间分配情况:struct test

2012-04-28 11:35:38 255

空空如也

空空如也

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

TA关注的人

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