![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux应用编程
文章平均质量分 65
GaoChuang_
平平凡凡程序员
展开
-
Linux应用编程- 程序地址布局 动态库 静态库
一、Linux应用程序地址布局1.从低地址到高地址分别分:代码段,数据段,BSS段,堆,栈2.堆是向高地址内存生长的3.是向低地址内存生长的4.查看程序内存地址分配 使用 ps aux 找到进程的PID 使用命令 cat /proc/(进程的PID)/maps查看内存地址分配\5. 代原创 2016-04-10 15:41:52 · 432 阅读 · 0 评论 -
多线程程序设计
一、线程的概念 1.线程就是“轻量级”的进程。 2.线程不创建新的代码段以及数据段,与创建它的进程共享数据段以及代码段。 3.线程拥有自己独立的栈二、线程的函数学习 1.创建新线程 int pthread_create(pthread_t *thread,const pt原创 2016-04-10 15:46:59 · 464 阅读 · 0 评论 -
消息队列通讯
一、消息队列概念: 消息队列就是一个消息的链表。而一条消息可以看做一个记录,具有特定的格式,进程可以按照一定的规则添加新消息,另一个进程可以从消息队列中独自消息。原创 2016-04-10 15:46:24 · 382 阅读 · 0 评论 -
共享内存
一、共享内存的基本概念: 共享内存是IPC机制中的一种,他允许两个相关的进程访问 同一段内存,这是传递数据非常有效的一种方式。 二、共享内存的基本函数 1.创建原创 2016-04-10 15:45:46 · 366 阅读 · 0 评论 -
信号量互斥编程
一、信号量的作用: 信号量有时被称为信号灯,是在多线程环境下使用的一种设施,用来保证两个或者多个代码段不会被并发的调用。 主要用途是用来保护临界资源(进程互斥),进程可以根据它判断是否可以访问某些共享资源。二、信号量的分类: 二值信号灯:信号灯的值只能取0或者1;原创 2016-04-10 15:45:10 · 455 阅读 · 0 评论 -
信号通讯
一、信号处理流程 二、常见的信号: SIGKILL:杀死进程 SIGSTOP:暂停进程 SIGCHLD:子进程停止或结束时用来通知父进程三、常见的信号函数 1.kill 向一个进程发送信号 int kill(pid_t pi原创 2016-04-10 15:44:37 · 340 阅读 · 0 评论 -
管道通讯
一、通讯的目的: 1.数据传输 一个进程需要将数据发送给另外一个进程。 2.资源共享 多个进程之间共享同样的资源。 3.通知事件 一个进程需要向一个/组进程发送信息,来通知它们发生了某事件。 4.进程控制 有些进程希望完全控制另一个进程的执行,此时控原创 2016-04-10 15:43:45 · 389 阅读 · 0 评论 -
进程
进程:是一个具有一定独立功能的程序的一次运行活动。 进程的特点:动态性、并发性、独立性、异步性进程的状态: 进程ID:标识进程的唯一数字父进程的ID(PPID) 启动进程用户的ID:(UID)进程互斥:指若干个进程都要使用某一资源时,但该资源在同一时刻最多只允许一个进程访问,这时其它进程必须等待,直到占用该资原创 2016-04-10 15:43:12 · 396 阅读 · 0 评论 -
linux系统编程 - 文件复制程序
源文件复制到目标文件步骤: 1.打开源文件 2.打开目标文件 3.读取源文件 4.将读取的目标文件写入源文件 5.关闭源文件和目标文件 命令使用方式 ./filecp s.txt ./t.txt int main(int argc,char** argv) //argc 记录命令个原创 2016-04-10 15:42:29 · 596 阅读 · 0 评论 -
线程同步
一、线程同步 多个线程按照一定的顺序来执行,即为线程的同步。 二、线程同步实例 #include#include#include pthread_t thread[2]; pthread_mutex_t mux; in原创 2016-04-10 15:48:08 · 409 阅读 · 0 评论