- 博客(26)
- 收藏
- 关注
转载 Linux系统中如何查看进程
进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系统资源。一般来说,Linux系统会在进程之间共享程序代码和系统函数库,所以在任何时刻内存中都只有代码的一份拷贝。 1,ps命令 作用:ps命令主要用于查看系统中进程的状态。 用法:ps [选项] 主要选项如下: -e 显示所有进程 -a 跟终端无关的进程 (BSD风格,不加横杆) -x 跟终端
2013-07-16 19:22:13 548
原创 杂七杂八
1.qemu中虚拟机加载usb设备:首先在host主机使用lsusb命令得到USB设备的ID号。然后在原来的kvm命令上加上如下“- usbdevice tablet - usbdevice host:xxxx:xxxx2.dpkg 查询当前系统所有已安装的deb包dpkg -l 查询
2013-06-26 20:22:29 349
原创 TCP/IP协议详解卷一(day1)
封装:以太网数据帧的长度必须在46~1500字节之间。以太网的帧首部也有一个16bit的帧类型域(IP,ARP,RARP)。IP首部有一个长度为8bit的数值,称作协议域。(1代表ICMP,2代表IGMP,6代表TCP,17代表UDP)。TCP和UDP都用16bit的端口号来表示不同的应用程序(ftp,telnet,http)。端口号:服务器的端口号使用知名端口,cli
2013-06-26 17:32:07 558
原创 UNP学习笔记-第6章
I/O复用:一.概念进程需要一种预先告知内核的能力,使得内核一旦发现进程指定的一个或者多个I/O条件就绪(也就是说输入已准备好被读取或者描述符能承载更多的输出),它就通知进程。这个能力称之为I/O复用,使用select和poll函数支持。pselect是POSIX变种,epoll是Linux独有。二.I/O模型UNIX下5种可用的I/O模型:阻塞式I/O非阻塞式I/OI
2013-06-25 15:49:02 588
原创 UNP学习笔记-第5章
1.server.c#include #include #include #include #include #include #include #include #include "proto.h"#define MAXLINE 1024static void sig_chld(int signo){ pid_t pid ; in
2013-06-24 16:53:13 507
原创 TCP套接字编程实现简单的并发服务器
unix中编写并发服务器程序最简单的方法就是fork一个子进程来服务每一个客户。实现代码如下:proto.h定义client和server共同使用的协议格式,这里定义了tcp 服务器端的端口号,以及一些时间格式。#ifndef TCPPROTO_H__#define TCPPROTO_H__#define SERVERPORT "1987"#define
2013-06-20 14:19:39 607
转载 sk_buff
All network-related queues and buffers in the kernel use a common data structure,struct sk_buff. This is a large struct containing all the control information required for the packet (datagram, ce
2013-05-28 11:58:06 492
原创 Linux守护进程
1.守护进程:后台服务进程,不依附于终端。2.创建守护进程的步骤:一、创建子进程,父进程退出。 父进程退出后,子进程会变成一个孤儿进程。当系统发现孤儿进程后,init进程会收养它。 pid_t pid ;pid = fork() ;if(pid > 0){ exit(0) ;}二、在子进程中创建新会话 创建守
2013-05-21 19:54:55 384
原创 python学习笔记(2)--python 多线程与queue
转载自http://www.cnblogs.com/tqsummer/archive/2011/01/25/1944771.html要点:python线程:thread和threading模块同步机制:锁:thread:Lock对象threading:RLock对象条件变量:condition对象队列:queue
2013-05-14 20:34:29 414
原创 python学习笔记(1)--os和os.path模块
1.os.path模块os.path.abspath(path)Return a normalized absolutized version of the pathname path. On most platforms, this is equivalent to calling the function normpath() as follows: normpath(joi
2013-05-14 19:52:13 630
原创 实现strcpy和strlen函数
1.strcpychar* strcpy(char* strDest ,const char* strSrc){ //实现链式操作,将目的地址返回 assert((strDest != NULL) && (strSrc != NULL)); char* address = strDest; while((*strDest++ = *strSrc++) != '
2012-05-15 23:46:19 322
原创 北京仙掌面试总结
今天去北京仙掌面试,这是一家做手机游戏的公司,我面试的职位是C/C++软件工程师。 可谓是丢人丢大发了,一个笔试就直接让人家鄙视了,其实笔试试题不是很难,这充分说明一个问题,暴露出以前很多的缺点。 第一点,动手能力太差,很多编程题目知道怎么去写,也可以用伪代码写出来,但是用计算机语言写出来就出现了问题。比如说今天的第一道编程题目,涉及到的知识点只有些顺序结构的问题,我却没有准确
2012-04-16 20:49:08 813
转载 关于windowsx.h的介绍
关于windowsx.h的介绍(2011-09-18 21:56:55)转载▼标签:杂谈 很多初中级程序员用C/C++编写WindwosAPI的程序时,经常面对面条式的switch...case语句块当你在Window过程(回调函数、下称过程)中加入大量诸如WM_COMMAND orWM_CHAR的消息捕获时。真是一场噩梦。
2012-04-06 21:01:27 418
转载 c++中的const
CONST (一)简单介绍,把握全局 const与define,指针,引用,函数,类成员 1.》》const与define。两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些。#define只是简单的文本替换,除了可以定义常量外,还可以用来定义一些简单的函数,有点类似内置函数。const和define定义的常量可以放在头文件里面。(小注:可以多
2012-03-31 23:35:03 227
原创 汇编学习笔记
(1)段地址在8086CPU的段寄存器中存放。当8086CPU要访问内存时,由段寄存器提供内存单元的段地址。8086CPU有4个段寄存器,其中CS用来存放指令的段地址。(2)CS存放指令的段地址,IP存放指令的偏移地址。8086机中,任意时刻,CPU将CS:IP指向的内容当作指令执行。(3)8086CPU的工作过程: ①从CS:IP指向的内存单元读取指令,读取的指令进
2011-12-24 11:01:31 176
原创 深入解析windows内部原理之一
1. windows的开发模型: 消息机制 , 窗口机制,注册表,hook等 。2. windows的组件模型:DLL , COM , COM+ , .NET 。3. windows的分布式服务:目录服务,分布式服务(kerberos和IPsec, TLS ) , COM+ , ADO事务管理等 。4. windows内核 Ntdll.dll 将用户模
2011-12-05 18:42:51 393
原创 处理机调度与死锁
1. 处理机调度 高级,中级,低级调度 高级调度:作业调度或长程调度①接纳多少个作业,取决于多道程序度。②接纳哪些作业,取决于调度算法。 低级调度:进程调度或短程调度 两种方式:1> 非抢占式 实现简单,系统开销小,适用于大多数的批处理系统
2011-12-05 17:26:59 349
原创 C和指针(第七章--函数)
1.C函数参数: 传递给函数的标量参数是传值调用的 传递给函数的数组参数在行为上就像它们是通过传址调用的那样。2.c语言用于设计和实现抽象数据类型(ADT) , 因为它可以限制函数和数据定义的作用域。这个技巧也被称为黑盒(black box)设计。 限制对模块的访问是通过static关键字的合理使用来实现的,它可以限制对那些并非接口的函数和数据的访问。3.c通过运行
2011-12-05 15:12:12 272
原创 C++模板
1.C++模板 C++引入模板机制,模板定义:模板就是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数, 从而实现了真正的代码可重用性。模版可以分为两类,一个是函数模版,另外一个是类模版。
2011-12-05 15:10:26 213
原创 C和指针(第六章--指针)
1.内存中的每个位置由一个独一无二的地址标识。2.内存中的每个位置都包含一个值。3.指针的初始化是用&操作符完成的,它用于产生操作数的内存地址。4.NULL指针并未指向任何东西,因此,对一个NULL指针进行解引用操作是非法的。
2011-12-05 15:08:43 428
原创 Effective C++ learning
<br /><br />Item1 : view C++ as a federation of languages<br />1. C++ 相当于C的改进:<br />Exception 对函数的结构化<br />Templates<br />STL<br />2. C++:多重泛型编程语言(multiparadigm programming language )<br />同时支持过程形式(procedural)<br />面向对象编程(object-oriented)<br />函数形式
2011-04-24 22:37:00 344
原创 学习笔记(1)
数据结构: 1.用户自定义的数据类型:结构体,类和对象。 附:算法的经典书籍 《计算机程序设计技巧》 2.数据结构:数据之间通过结构化的方式被组织在一起。 结构:数据对象之间的关系和组织方式 基本的结构:线性结构(队列,链表,栈) 非线性结构(树,图等) 线性结构中元素之间存在一对一关系,通常的数据组织方式有两种:顺序式,链式。 顺序存储结构是最基本的表示方法,如数组;链式存储结构借助于指针类型来实现。
2011-01-05 11:50:00 351
原创 指针学习笔记(持续更新)
question:1.什么是指针?2.指针与引用的异同?何时使用指针,何时使用引用?1.C++提供两种字符串:string类对象和C风格的基于指针的char*字符串。2.常量指针自身不可改变,而指向的目标可以改变。 使用const修饰指针: ①指向非常量数据的非常量指针:如 int *ptr ; 应用:间接引用指针使其修改数据,并修改指针使其指向其他数据。 ②指向常量数据的非常量指针:如 const int *ptr 应用:可使用这种指针为函数接受数组实参,函数处理数组的每个
2011-01-04 16:16:00 268
原创 linux学习笔记(11月23日前)
1.建立链接:ln 硬链接: ln 源文件 新建链接名 软练剑: ln-s 源文件 新建链接名2.在ext2和ext3文件系统中,文件以inod + block 的方式存在。 stat指令检查文件的block与inode状况。3. .文件和 ..文件 在每个目录之下都有一个.文件和..文件 ,.文件是对当前目录的一个硬连接, ..文件是对上级目录的一个硬连接。4.在查看目录文件时要加上-d ,如 ls -dl 。5.umask: 每个用户创建文件时,此文件
2010-11-23 16:22:00 213
原创 C++学习笔记(1)
<br />1.类和结构体的区别:<br /> 区别在于访问控制方面,对于结构体而言,所有成员缺省都是public,即在外部可以访问,对于类来说,缺省条件下成员函数都是private,不能被外部访问。<br /> <br />2.C++中的构造函数:<br /> ①.构造函数最重要的作用是创建对象本身。<br /> ②.C++规定,每个类必须有一个构造函数,没有它,就不能创建任何对象。<br /> ③.一个类若没有提供任何的构造函数,则C++提供一个默认的构造函数,这个默认的构造函数不带任何
2010-11-23 16:04:00 238
原创 信号量机制
<br />信号量S是一个整数,S大于等于零时代表可供并发进程使用的资源实体数,但S小于零时则表示正在等待使用临界区的进程数。<br />Dijkstra同时提出了对信号量操作的PV原语。<br />P原语操作的动作是:<br /> (1)S减1;<br /> (2)若S减1后仍大于或等于零,则进程继续执行;<br /> (3)若S减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转进程调度。<br />V原语操作的动作是:<br /> (1)S加1;<br /> (2)若相加结果大于
2010-08-16 17:09:00 292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人