一.信号我们在shell下运行起来一个程序,可以在这个进程正在运行的时候键盘输入一个Ctrl+C,就会看到这个进程被终止掉了,其实当我们键入Ctrl+C的时候是向进程发送了一个SIGINT信号,这时候产生了硬件中断则系统会从执行代码的用户态切入到内核态去处理这个信号,而一般这个信..
分类:
系统相关 时间:
2016-05-07 01:14:13
阅读次数:
200
strace命令用法详解: strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用 ...
分类:
系统相关 时间:
2016-05-06 19:18:36
阅读次数:
223
在Build2016上微软为了拉拢开发者发了个大招,那就是Win10一周年更新集成原生Linux Bash命令行功能,这将允许开发者或用户在Windows10系统上以命令行形式运行Linux程序,现在Win10运行Linux GUI应用也已成真。微软在推送的Win10一周年更新预览版14316中,该 ...
话不多说,直接上干货,下面两个程序都是linux程序。 server.c完整代码: #include <stdio.h>#include <string.h>#include <unistd.h>#include <netinet/in.h>#include <arpa/inet.h>#includ ...
分类:
编程语言 时间:
2016-05-02 13:06:45
阅读次数:
595
原文网址:http://www.cnblogs.com/alyssaCui/archive/2013/04/01/2993886.html poll poll或select为大部分Unix/Linux程序员所熟悉,这俩个东西原理类似,性能上也不存在明显差异,但select对所监控的文件描述符数量有限 ...
分类:
系统相关 时间:
2016-04-27 15:31:36
阅读次数:
234
使用的命令为:free-mm为以MB为单位查看内存。当然你愿意的话,可以用K。如:在第一部分Mem行中有如下参数。total:内存总数,即3881MBused:已经使用的内存数,即3745MBfree:空闲的内存数,即135MBshared:当前已经废弃不用,总是0buffersBuffer:缓存内存数,即216MBcachedP..
分类:
系统相关 时间:
2016-04-26 16:06:07
阅读次数:
232
一、入门查看linux的环境变量echo$PATH使用冒号进行分割PATH变量里面的条目,而不是windows里使用分号。gcc-oexenamecodename.cpp通过编译codename.cpp生成一个exename的应用程序如果不写-oexename这个参数,则生成的应用程序为a.out包含头文件-I头文件目录包含lib库-L库目录-l..
分类:
系统相关 时间:
2016-04-23 07:48:50
阅读次数:
377
七、数据管理内存管理malloc,free,realloc和windows都一样,都是ANSIC。实际上,应用程序并没有直接访问到物理内存,也可以通过malloc获得比实际内存大得多的内存空间,因为系统会使用交换空间(swapspace,可以理解为windows的虚拟内存),如果申请的内存大于物理内存和交换空间..
分类:
系统相关 时间:
2016-04-23 07:48:31
阅读次数:
441
之前我一直都提到的是进程,现在多了一个线程的概念,从字面意思来看,线程应该比进程校嘿嘿。其实操作系统刚开始的时候,提出进程概念后,操作系统一直都是以进程作为独立运行的基本单位,然后有人感觉了,这不对呀,进程之间的中断转换太浪费了,并且用户态到核心态的切换也..
分类:
编程语言 时间:
2016-04-19 20:21:20
阅读次数:
305
一、什么是消息队列消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。二、在Linux中使用消息队列Linux提供了一系列消息队列的函数接口来让我们方便地使用它来实现进程间的通信..
分类:
其他好文 时间:
2016-04-19 00:35:52
阅读次数:
232