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

首页 / 操作系统 / Linux

Linux fork炸弹及其预防

Linux fork炸弹及其预防

在Linux系统下执行这段代码 :(){ :|:& };: 就会引起死机,一旦执行起来后,唯一的方法就是重启系统。实际上这段代码是一段无限递归代码,将系统资源耗尽。本文下面有这段代码的详细解释,为了防止fork炸弹,方法就是限制用户能够启动的进程数。具体做法,编辑/etc/security/limits.conf文件,在末尾加入 : * hard nproc 200 将用户的进程数限制为200,经过测试,root账户不受这个限制。Q. Can y...
使用OpenCV官方提供文件配置、静态编译并运行OpenCV-2.3.x/2.4.x实例

使用OpenCV官方提供文件配置、静态编译并运行OpenCV-2.3.x/2.4.x实例

当我们需要测试程序,或者想将程序发给其他同事或者同学,以让同事或者同学运行以测试程序性能或者逻辑是否恰当时,是不是还要他人也要像你当初开发程序时一样一步一步的配置OpenCV运行环境!?如果不做这些,还会提示像图1所示的系统错误(无法启动程序,因为计算机中丢失“opencv_highgui241d.dll。尝试重新安装该程序以解决此问题”),这是不是太麻烦了,其实我们可以将程序以静态链接的方式编译,如此便少去了配置运行时环境的步骤了。图1动态编译的程序在未...
OpenCV 2.3.x/2.4.x在Visual Studio 2005/2008和Visual Studio 2010配置方法详解

OpenCV 2.3.x/2.4.x在Visual Studio 2005/2008和Visual Studio 2010配置方法详解

由于OpenCV自2.3.0版本开始就提供了OpenCV-2.3.x -win-superpack.exe或OpenCV-2.4.x.exe文件,该文件解压后,会生成Windows版本的源代码,这种源代码可以通过cmake、intel TBB与Visual Studio 2005/2008/2010结合编译生成目标文件(包括动态链接库、可执行文件等),出现的问题也就那么几个,非常容易便能解决。本人技术有限,不能够直接使用Unix源码在Windows下编译(...
安装OpenCV 2.3出现错误“opencv error PRJ0019: 工具从“正在执行生成后事件...”

安装OpenCV 2.3出现错误“opencv error PRJ0019: 工具从“正在执行生成后事件...”

这个问题困扰了我很久,而且困扰了我两次,于是我终于找到了解决方法,但是那个网站上居然不能复制内容,还要注册之后才能复制!这我怎么能把这个伟大而正确的信息广泛传播呢?在有关openCV这么伟大的开源软件面前,还要给开发人员设置边边框框,这个坎那个坎的,不脸红吗?于是哥自己手打了一遍这个解决方法,复制在此,供大家利用。就不注明来源地址了,还要注册才能复制内容!(1)如果在重新编译install时出现错误“opencv error PRJ0019: 工具从“正在...
OpenCV2.3中背景建模算法

OpenCV2.3中背景建模算法

我也不清楚具体是在哪一个版本进行更新的,我看的是最新的2.3版本,已经淘汰了网上很流行的那个建模算法,连那个函数都没有了最新版的文档说明为在这里:http://opencv.itseez.com/在其中的video. Video Analysis项目下就有BackgroundSubtractor,点击打开发现原来那些都是更新过的,这次比较搞乐的是,opencv的作者们搞了两个背景建模算法,也许是因为现在背景建模的算法实在是又多又杂。其中第一个算法类是Bac...
使用OpenCV-2.4.0.exe文件编译x86或x64平台Visual Studio 2005/2008/2010目标文件

使用OpenCV-2.4.0.exe文件编译x86或x64平台Visual Studio 2005/2008/2010目标文件

首先声明在Visual Studio 2008/2010下使用OpenCV不需要再编译OpenCV-2.4.0,原因是在OpenCV-2.4.0.exe解压后会产生build文件夹,其中有很多目录,我们注意到x86文件夹,里面又有vc9、vc10等文件夹(包含debug和release版本),使用这些文件我们可以直接配置OpenCV-2.4.0,这里讲述编译方法只是一时兴起。配置方法详见本人其他文章:OpenCV 2.3.x/2.4.x在Visual St...
如何编译OpenCV-2.3.x/OpenCV-2.4.x使其支持GPU-CUDA高速运算?

如何编译OpenCV-2.3.x/OpenCV-2.4.x使其支持GPU-CUDA高速运算?

前面,我们讲到了使用OpenCV-2.4.0在Visual Studio 2005/2008/2010常规编译的方法,本文则主要讲述如何使OpenCV支持CUDA高速运算。 我们将要使用的工具除了常规编译方式使用的工具外,还要使用CUDA tookit和GPU Computing SDK,如本人使用的版本分别为cudatoolkit_4.2.9_win_64.msi和gpucomputingsdk_4.2.9_win_64.exe(我的电脑是64位系统),...
C语言打印水仙花数

C语言打印水仙花数

题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。程序分析:判断一个数是否为水仙花数,先求出各个数位的数字,然后各个数位数字三次方和这个数比较,等于这个数说明为水仙花数#include<stdio.h> intmain() { inti,x,y,z; for(i=100;i<1000;i++) { x=i%10;...
Java 8 Lambda 表达式:模拟 Mixin 实现类的多重继承

Java 8 Lambda 表达式:模拟 Mixin 实现类的多重继承

Java 8 开始出现,带来一个全新特性:使用 Lambda 表达式 (JSR-335) 进行函数式编程。今天我们要讨论的是 Lambda 的其中一部分:虚拟扩展方法,也叫做公共辩护(defender)方法。该特性可以让你在接口定义中提供方法的默认实现。例如你可以为已有的接口(如 List 和 Map)声明一个方法定义,这样其他开发者就无需重新实现这些方法,有点像抽象类,但实际却是接口。当然,Java 8 理论上还是兼容已有的库。虚拟扩展方法为 Java ...
Linux缺页异常处理--用户空间

Linux缺页异常处理--用户空间

用户空间的缺页异常可以分为两种情况--1.触发异常的线性地址处于用户空间的vma中,但还未分配物理页,如果访问权限OK的话内核就给进程分配相应的物理页了。2.触发异常的线性地址不处于用户空间的vma中,这种情况得判断是不是因为用户进程的栈空间消耗完而触发的缺页异常,如果是的话则在用户空间对栈区域进行扩展,并且分配相应的物理页,如果不是则作为一次非法地址访问来处理,内核将终结进程。下面来看do_page_fault()函数对用户空间缺页异常的处理。dotra...
Linux缺页异常处理--内核空间

Linux缺页异常处理--内核空间

缺页异常被触发通常有两种情况——1.程序设计的不当导致访问了非法的地址2.访问的地址是合法的,但是该地址还未分配物理页框下面解释一下第二种情况,这是虚拟内存管理的一个特性。尽管每个进程独立拥有3GB的可访问地址空间,但是这些资源都是内核开出的空头支票,也就是说进程手握着和自己相关的一个个虚拟内存区域(vma),但是这些虚拟内存区域并不会在创建的时候就和物理页框挂钩,由于程序的局部性原理,程序在一定时间内所访问的内存往往是有限的,因此内核只会在进程确确实实需...
<< 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 >>