Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

Socket.IO 和 Node.js 入门

Socket.IO 和 Node.js 入门

Node.js 并不能做所有事情,但它可通过 Socket.IO 库轻松实现 WebSockets。使用 WebSockets 可轻松构建实时多用户的应用程序或游戏,今天我们将讲述如何使用 Node.js 和 Socket.IO 构建简单的聊天程序。注意: 在阅读文章之前你应该先安装好 Node.js,同时你需要一个自己喜欢的文本编辑器,本文提及的一些源码有些改自 http://book.mixu.net/ch13.html下面我们开始入门教程:首先在你的...
L?inux中mmap系统调用原理分析与实现

L?inux中mmap系统调用原理分析与实现

1、mmap系统调用(功能) void* mmap ( void * addr , size_t len , int prot , int flags ,int fd , off_t offset ) 内存映射函数mmap, 负责把文件内容映射到进程的虚拟内存空间, 通过对这段内存的读取和修改,来实现对文件的读取和修改,而不需要再调用read,write等操作。2、mmap系统调用(参数) 1)addr: 指定映射的起始地址, 通常设为NULL, 由系统指...
Linux高级字符设备驱动

Linux高级字符设备驱动

1. Ioctl 用来做什么?大部分驱动除了需要具备读写设备的能力外,还需要具备对硬件控制的能力。例如,要求设备报告错误信息,改变波特率,这些操作常常通过ioctl方法来实现。1.1 用户使用方法在用户空间,使用ioctl 系统调用来控制设备,原型如下: int ioctl(int fd,unsigned long cmd,...)原型中的点表示这是一个可选的参数,存在与否依赖于控制命令(第2 个参数)是否涉及到与设备的数据交互。1.2 驱动ioctl方法...
Unix下C程序的内存布局

Unix下C程序的内存布局

从<Unix高级环境编程>中总结按照高位排序:1.栈,自动变量存储,每次函数调用的信息如函数结束后返回到的地址,调用者的环境信息.新调用的函数会为其自动临时变量分配空间.这就是递归函数的重点,每一次递归函数自我调用,一个新的栈帧会创建,因此他们的数据不会互相干涉到.2.堆,程序运行时动态分配的数据会被存储在此.3.未初始化数据段,通常被称为"bss"段,包含在程序中未被显式地初始化的全局变量,在程序被执行前,该段中的数据被内核初始化为数字0或者...
学习Unix和C语言

学习Unix和C语言

1、学习Unix和C语言,先向大家推荐一本书《Unix高级环境编程》(下载见 http://www.linuxidc.net/thread-2063-1-1.html),这本书是学习Unix和C的经典之作,尽量把书中提到的系统调用都写个练习程序,先感性的认识一下Linux系统提供给用户的系统调用都是干什么的,怎么用。系统调用是内核提供给用户的功能用以申请内核服务,对于Linux内核的学习,从系统调用入手是个不错的办法。学习过程可以参看Linux的联机帮助,...
Linux高端内存映射(上)

Linux高端内存映射(上)

高端内存概述在32位的系统上,内核占有从第3GB~第4GB的线性地址空间,共1GB大小,内核将其中的前896MB与物理内存的0~896MB进行直接映射,即线性映射,将剩余的128M线性地址空间作为访问高于896M的内存的一个窗口。引入高端内存映射这样一个概念的主要原因就是我们所安装的内存大于1G时,内核的1G线性地址空间无法建立一个完全的直接映射来触及整个物理内存空间,而对于80x86开启PAE的情况下,允许的最大物理内存可达到64G,因此内核将自己的最后...
Linux高端内存映射(中)

Linux高端内存映射(中)

临时内核映射临时内核映射和永久内核映射相比,其最大的特点就是不会阻塞请求映射页框的进程,因此临时内核映射请求可以发生在中断和可延迟函数中。系统中的每个CPU都有自己的临时内核映射窗口,根据不同的需求,选择不同的窗口来创建映射,这些窗口都以枚举类型定义在km_type中enumkm_type{ KMAP_D(0)KM_BOUNCE_READ, KMAP_D(1)KM_SKB_SUNRPC_DATA, KMAP_D(2)KM_SKB_DATA_SOFTIRQ,...
Android调用第三方软件打开下载的附件

Android调用第三方软件打开下载的附件

在做我们产品的时候,需要下载附件, 同时下载附件需要打开, 通过查阅一些资料发现,Android对这支持做的非常好,通过anction ,加minitype ,加数据源,就能找到合适的软件进行打开你的下载的附件,下面是我整理的一个的java类,希望对你有帮助! /**@projectC6Client*@packagecom.jh.c6.util*@fileCallOtherOpeanFile.java*@version1.0*@authorliaoyp*@...
Android开发教程:Android条码扫描【附源码】

Android开发教程:Android条码扫描【附源码】

条码扫描,相信大家应该都用过,像比较火的“我查查”,“淘宝”之类的软件都应用到了条码扫描工具,在Android上比较著名的解码库是ZXing,但这里我们不介绍ZXing,我们介绍iPhone上的一个解码库ZBar,两个库比较了一下,ZXing对于解码比较短的条码,二维码有优势,但如果条码很长的话,还是ZBar比较好,我特意拿快递单上的条码进行扫描,ZXing识别不了,但ZBar可以很快解码,但ZBar也有缺点,因为ZBar是用C语言写的,所以有的手机扫描的...
Linux用户态和内核态之间的交互

Linux用户态和内核态之间的交互

Netlink 是一种在内核与用户应用间进行双向数据传输的非常好的方式,用户态应用使用标准的 socket API 就可以使用 netlink 提供的强大功能,内核态需要使用专门的内核 API 来使用 netlink。用户态使用netlink:用户态应用使用标准的socket APIs, socket(), bind(), sendmsg(), recvmsg() 和 close() 就能很容易地使用 netlink socket。注意,使用 netlin...
使用 Python RQ 的 Python 执行后台任务

使用 Python RQ 的 Python 执行后台任务

目录安装 RQ 将任务队列化 在 Heroku 上发布 调试 扩展阅读 RQ (Redis Queue) 可以让 Heroku 平台上的 Python 应用轻松的执行后台任务,RQ 使用 Redis 作为队列存储,因此要使用 RQ 之前必须配置应用程序然后启动并运行一个工作进程。安装 RQ可使用 pip 命令来安装 RQ 以及其依赖的库1$ pip install rq 2Downloading/unpacking rq 3Downloading rq-0...
是时候考虑用 Node.js 做点东西了

是时候考虑用 Node.js 做点东西了

除非你是多年生活在石器时代,否则你不会没听说过 Node.js,一套用来编写高性能网络服务器的JavaScript平台。如果你跟我一样是一个 .NET 工程师,主要开发 Windows 下的各种应用,那么在听到 Node.js 介绍时你的反应可能是:哦,这不错,然后继续工作。但我想说的是,现在是时候用 Node.js 来开发应用了,它可以简化很多现有工具所作的工作,而且 Node.js 在 Windows 下也已经足够成熟。一个很好的例子就是 iisnod...
<< 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 >>