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

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

首页 / 操作系统 / Linux

在 JavaScript 中使用 C 程序

在 JavaScript 中使用 C 程序

JavaScript 是个灵活的脚本语言,能方便的处理业务逻辑。当需要传输通信时,我们大多选择 JSON 或 XML 格式。但在数据长度非常苛刻的情况下,文本协议的效率就非常低了,这时不得不使用二进制格式。去年的今天,在折腾一个 前后端结合的 WAF 时,就遇到了这个麻烦。因为前端脚本需要采集不少数据,而最终是隐写在某个 cookie 里的,因此可用的长度非常有限,只有几十个字节。如果不假思索就用 JSON 的话,光一个标记字段 {"enableXX": ...
思科宣布将检查软件是否含有后门代码

思科宣布将检查软件是否含有后门代码

在Juniper的防火墙产品NetScreen发现两个后门之后,思科宣布将重新检查它的软件,以防万一含有后门代码。Juniper的后门一个被认为隐藏在椭圆曲线加密算法中,另一个则是一个秘密的管理权限访问密码。思科称,他们采用的常规方法应该能发现未授权的代码,但并不能保证消除所有安全风险。额外的软件检查将包含渗透测试和精通网络和加密技术的工程师的人工代码检查。检查者将寻找后门、硬编码或未记录的账号凭证。...
Linux线程同步

Linux线程同步

一.概述 互斥量是线程同步的一种机制,用来保护多线程的共享资源。同一时刻,只允许一个线程对临界区进行访问。互斥量的工作流程:创建一个互斥量,把这个互斥量的加锁调用放在临界区的开始位置,解锁调用放到临界区的结束位置。当内核优先把某个线程调度到临界区的开始位置时,线程执行这个加锁调用,并进入临界区对资源进行操作。此时其他线程再被内核调度到这里的时候,由于该互斥量已被加锁状态,得不到锁会一直阻塞在这里,导致其他线程...
Java NIO1:I/O模型概述

Java NIO1:I/O模型概述

I/O模型在开始NIO的学习之前,先对I/O的模型有一个理解,这对NIO的学习是绝对有好处的。我画一张图,简单表示一下数据从外部磁盘向运行中进程的内存区域移动的过程:这张图片明显忽略了很多细节,只涉及了基本操作,下面分析一下这张图。用户空间和内核空间一个计算机通常有一定大小的内存空间,如一台计算机有4GB的地址空间,但是程序并不能完全使用这些地址空间,因为这些地址空间是被划分为用户空间和内核空间的。程序只能使用用户空间的内存,这里所说的使用是指程序能够申请...
Java NIO2:缓冲区

Java NIO2:缓冲区

什么是缓冲区一个缓冲区对象是固定数量的数据的容器,其作用是一个存储器,或者分段运输区,在这里数据可被存储并在之后用于检索。缓冲区像前篇文章讨论的那样被写满和释放,对于每个非布尔原始数据类型都有一个缓冲区类,尽管缓冲区作用于它们存储的原始数据类型,但缓冲区十分倾向于处理字节,非字节缓冲区可以再后台执行从字节或到字节的转换,这取决于缓冲区是如何创建的。缓冲区的工作与通道紧密联系。通道是I/O传输发生时通过的入口,而缓冲区是这些数据传输的来源或目标。对于离开缓冲...
NSA帮助GCHQ发现Juniper防火墙漏洞

NSA帮助GCHQ发现Juniper防火墙漏洞

Theintercept根据Edward Snowden泄露的机密文件报道,NSA帮助英国情报机构GCHQ找到了利用Juniper防火墙安全漏洞的方法。机密文件的日期为2011年2月,引发了是否是情报机构要为Juniper防火墙后门负责的疑问。Juniper防火墙运行的软件发现了两个后门,是未知身份的攻击者分别在2012年和2013年添加到软件中的。在2011年的GCHQ文件中,作者将Juniper视为一种威胁和目标,因为它提供了反监听的数据保护技术。文件...
2016 年,新 Node 项目注意点

2016 年,新 Node 项目注意点

正文2016年开发 Node 项目,会有什么不一样吗?! 当然随着语言,工具,运行环境,开发方式的不断变化,你的 Node 项目当然也需要不断的与时俱进,那么我们就依次来看看需要注意哪些问题吧。目录现在开始使用 ES2015异步函数支持回调惯例和Promise新写法异步模式错误处理使用标准的 JavaScript 代码风格Web 应用开发的十二条军规始终用 npm init 开始新项目文件名始终小写智能的 .npmrc 和正确的版本管理做法及时更新依赖选择...
ARM的常数表达式

ARM的常数表达式

如果说Intel指令中的立即数,相信大家都很熟悉。类似的,Arm指令中的“立即数”就是常数表达式。之所以称为常数表达式,而不称为立即数是有原因的。Intel指令属于CISC指令集,指令是不定长的,因此可以将任意32位立即数编码到指令内。Arm指令属于RISC指令集,指令是定长的32字节。众所周知,指令中操作码是必须的字段,如果把32位立即数直接编码到指令内部,操作码就无“容身之地”了…&hell...
Linux的原子操作与同步机制

Linux的原子操作与同步机制

并发问题现代操作系统支持多任务的并发,并发在提高计算资源利用率的同时也带来了资源竞争的问题。例如C语言语句“count++;”在未经编译器优化时生成的汇编代码为。当操作系统内存在多个进程同时执行这段代码时,就可能带来并发问题。假设count变量初始值为0。进程1执行完“mov eax, [count]”后,寄存器eax内保存了count的值0。此时,进程2被调度执行,抢占了进程1的CPU的控制权。进程2执行&...
<< 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 >>