操作系统
芹泽
小程序员有大梦想
展开
-
函数调用过程中函数栈详解
当进程被加载到内存时,会被分成很多段代码段:保存程序文本,指令指针EIP就是指向代码段,可读可执行不可写,如果发生写操作则会提示segmentation fault 数据段:保存初始化的全局变量和静态变量,可读可写不可执行 BSS:未初始化的全局变量和静态变量 堆(Heap):动态分配内存,向地址增大的方向增长,可读可写可执行 栈(Stack):存放局部变量,函数参数,当前状...原创 2018-08-14 16:19:51 · 29726 阅读 · 24 评论 -
linux pthread_create线程函数的基本使用
POSIX线程(POSIX threads),简称Pthreads,是线程的POSIX标准。该标准定义了创建和操纵线程的一整套API。在类Unix操作系统(Unix、Linux、Mac OS X等)中,都使用Pthreads作为操作系统的线程。Windows操作系统也有其移植版pthreads-win32。说白了,使用Pthreads方便移值。今天我们就来学习一下Pthreads的简单用法,废...原创 2018-08-22 10:44:10 · 8109 阅读 · 0 评论 -
linux线程与进程的理解
首先明确一点,linux对进程和线程不做区分,统一由task_struct来管理所有进程和线程。那么如何在linux下区分进程和线程呢? 为什么要引入线程的概念?一个进程包含很多系统资源:进程控制块、虚存空间、文件系统,文件I/O、信号处理函数,创建一个进程的过程就是这些资源被创建的过程。系统调用fork创建一个进程时子进程是一段独立的内存空间,其中的资源是父进程资源的副本,两...原创 2018-08-21 18:05:03 · 9194 阅读 · 0 评论