![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux应用程序开发
文章平均质量分 75
武剑雨
这个作者很懒,什么都没留下…
展开
-
gcc静态链接与动态链接,gdb test,$^依赖$@目标$<
一GCC学得的知识总结(1)编译链接gcc hello.c -o hello只编译不链接gcc -c hello.c如果出现gcc -c hello.c -o hello;则会报错[root@embedclub gcc]# gcc -c hello -o hellogcc: hello:未使用链接器输入文件,因为链接尚未完成 产生调试信息gcc -g hello.c原创 2013-05-20 20:00:24 · 883 阅读 · 0 评论 -
进程控制原理及程序设计
一进程控制原理1进程是一个具有一定独立功能的程序的一次运行活动。进程是运行着的程序。2特点动态性,并发性,独立性,异步性3状态就绪态,执行态,阻塞态4进程ID-PID父进程ID-PPID启动进程的用户-UID5进程互斥当硬件或软件资源不允许多个进程共同使用时就会产生互斥6临界资源临界区:7进程同步:一组并发进程按《原创 2013-05-20 20:11:02 · 564 阅读 · 0 评论 -
访问文件之系统调用以及库函数访问
linux系统中,所有打开的文件都对应一个文件描述符,本身是一个非负整数,0-19,so允许每个进程最多能打开20个文件,现在绝大多数的能打开1024个编程总结:(1)main(int argc,char*argv[])//argc是整型,表示实际参数的个数。argv表示字符出指针数据(2)(fd=open(argv[1],O_CREAT|O_RDWR,0755))//如果flag原创 2013-05-20 20:04:05 · 678 阅读 · 0 评论 -
多线程的基础知识
1使用多线程的理由之一是:节俭,它是轻量级的进程[1]无须在给独立的数据段,代码段,堆栈段[2]线程间无须复杂的通信2启动一个新的进程必须分配给它独立的地址空间建立代码段、堆栈段和数据段。而线程它的这些是共享的。3多个线程可同存于一个进程,就不需要通信方式,只需定义一些变量4多线程接口遵循POSIX线程接口。头文件pthread.h连接时需要使用原创 2013-05-20 20:27:18 · 406 阅读 · 0 评论 -
进程通信的五个种类
一进程通信概述1为什么进程间需要通信(1)数据传输;--一个进程需要它的数据发送给另一个进程。(2)资源共享;----多个进程之间共享同样的资源(3)通知事件;----一个进程需要向另一个或一组发送信息,通知它们发生了某种事件。(4)进程控制------有些进程希望完全控制另一个进程的执行2linux使用的进程间通信方式包括:管道和有名管道FIFO信号(sign原创 2013-05-20 20:25:47 · 834 阅读 · 0 评论 -
linux进程通信实例详解
一管道通信实例分析(1)无名管道pipe_rw.c--创建管道用pipe【1】pipe_fd[2]数组中,pipe_fd[0]-头部-读信号;pipe_fd[1]-尾部-写信号【2】在系统调用fork()钱调用pipe()创建管道,否则子进程将不会继承文件描述符【3】子进程睡眠2秒sleep(2);因为子进程是读的,应父进程先写,所以睡眠2秒,把CPU让给父进程【4】原创 2013-05-22 09:51:44 · 769 阅读 · 0 评论 -
多线程的程序设计实例分析
1创建线程:#incluedint pthread_create(pthread_t*tidp,const pthread_attr_t*attr,void*(*start_rtn)(void),void*arg)tidp:线程idattr:线程属性(通常为空)start_rtn:线程要执行的函数arg:start_rtn的参数2编译--因为pthread的库不原创 2013-05-22 12:49:23 · 587 阅读 · 0 评论