Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1512859
  • 博文数量: 338
  • 博客积分: 2695
  • 博客等级: 少校
  • 技术积分: 3556
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-05 11:37
个人简介

小鱼儿游啊游啊。。。。

文章分类

全部博文(338)

文章存档

2019年(4)

2018年(8)

2017年(6)

2016年(10)

2015年(49)

2014年(48)

2013年(98)

2012年(115)

发布时间:2013-01-05 17:12:35

一、使用指针做函数返回值:1、当使用指针做为函数的返回值时,主函数处的char *p;将获得调用函数char *pf;的值,即一个地址值,如oxAE72。此时需要我们注意的是该地址值所指向的空间是否存在(即已向操作系统声明注册,不会被释放,即可能被其他操作修改);2、使用栈内存返回指针是明显错误的,因为栈内存将在调用结束后自动释放,从而主函数使用该地址空间将很危险。   例如:            char* GetMemory()  &nbs......【阅读全文】

阅读(1134) | 评论(0) | 转发(0)

发布时间:2013-01-03 15:40:35

代码1:void GetMemory(char *p){ p = (char*)malloc(100);}int main(int argc, char *argv[]){ char *str = NULL; GetMemory(str); strcpy(str, "Hello"); return 0;}str没有得到分配内存的地址值。 内存空间状态:首先申请了四个字节的栈空间,存放str指针,此时str的值为0,存放str的这块内存的地址值为0x0012ff7c。调用函数 GetMemory,指针P入栈,也分配了四个字节的栈空间,P被赋str的值即此时P的值也为0,存放指针P的内存......【阅读全文】

阅读(1132) | 评论(0) | 转发(0)

发布时间:2013-01-02 15:14:37

创建一个共享库 创建共享库的目标文件和一般的目标文件有所不同,在编译时要加 -fPIC。-f后面跟一些编译选项,PIC是其中一种,表示生成位置无关代码(Position Independent Code)例如:     gcc -c -fPIC stack/stack.c stack/push.c stack/pop.c stack/is_empty.c     生成共享库,如:     gcc -shared -o libstack.so stack.o push.o pop.o is_empty.o ......【阅读全文】

阅读(834) | 评论(0) | 转发(0)

发布时间:2013-01-02 15:06:32

在详细讲解运行进程的组织及调度的一些列课题前,先把Linux内核中如何组织非运行状态进程的那些机制梳理一遍。 运行队列链表rq把处于TASK_RUNNING状态的所有进程组织在一起。当要把其他状态的进程分组时,不同的状态要求不同的处理,Linux选择了下列方式之一: (1) 没有为处于TASK_STOPPED、EXIT_ZOMBIE 或 EXIT_DEAD状态的进程建立专门的链表。由于处于暂停、僵死、死亡状态进程的访问比较简单,或者通过PID,或者通过特定父进程的子进程链表,所以不必对这三种状态进程分组。 (2) 对于处于TASK_INTERRUPTIBLE或TASK......【阅读全文】

阅读(1121) | 评论(0) | 转发(0)

发布时间:2012-12-29 10:02:21

等待队列(wait queue)用于使进程带等待某一特定的事件发生,而无需频繁的轮询操作,进程在等待时间内睡眠,在等待的事件发生时由内核自动唤醒。   一、 等待队列相关数据结构     每一个等待队列都由两部分组成:等待队列头(struct wait_queue_head_t)和等待队列成员(struct wait_queue)。 struct __wait_queue_head {    spinlock_t lock;      /*因为等待......【阅读全文】

阅读(2247) | 评论(0) | 转发(3)
给主人留下些什么吧!~~

yanbingwei862015-04-01 15:04

怎么你的文章很多都设置了只能自己看啊 我觉得很多写的很好 也想看看 能开放一下权限嘛  谢谢

回复  |  举报
留言热议
请登录后留言。

登录 注册