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

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

首页 / 操作系统 / Linux

Linux下面单个进程能够打开的文件句柄的数目

Linux下面单个进程能够打开的文件句柄的数目

环境:Linux执行ulimit -n默认的大小是1024.当然你也可以设置 ulimit -n 10240之类的这个问题,让我直接痛苦了两天,并间接痛苦了一个礼拜。一直觉得很奇怪,一个线程,仅仅是sleep 5秒钟,然后往一个文件里面写入一会儿数据,打开关闭一下的,为什么这个线程就会死掉呢?这个功能已经是极其简单了。后来终于发现,原来是另外一个线程出的错,那个线程打开的文件句柄数目太多了,超过了1024,导致上述的简单线程,连打开文件都无法打开,而且还不...
Linux下GCC源码方式安装过程

Linux下GCC源码方式安装过程

今天上午上机,任务是在Linux下熟悉以源码方式的软件安装,我们的目的就是将GCC4.1.1以源码的方式安装成功。这个东东之前也装过。是边在网上查边装的,装完能用就行了,也没总结过。今天做完后想总结一下,便于以后用。首先呢,就是下源码了, http://ftp.gnu.org/gnu/gcc/gcc-4.1.1/到这儿下一个,我们实验要求是下载这个,所以我就用的它,完全可以下一个最新的玩玩嘛,下完后解压,tar -xvjf gcc-4.1.1.tar.bz...
Linux系统下的JDK中文字体设置

Linux系统下的JDK中文字体设置

我们经常会发现在Linux系统下,java应用程序的中文会变成一个一个的“口”字,这样会给我们的使用带来很多的困扰。但是我们又不愿意放弃Linux和java的便捷。怎么来解决这个问题呢?其实,要解决这个问题也挺简单。咱们首先来说说产生这个问题的原因。java程序启动的时候会去在$JAVA_HOME/jre/lib/fonts目录下寻找相应的字体来显示。由于 JDK默认没有中文字体,所以我们需要手工的来设置一下,让java应用程序能够找到相应的中文字体。这样...
Linux与Unix过滤程序学习笔记之GREP

Linux与Unix过滤程序学习笔记之GREP

整理了下一篇关于Linux与Unix过滤程序学习笔记之GREP.grep同TAIL,WC,SORT等同属输出过滤程序。(在这里我不过多说GREP家族历史了) 命令格式:GREP 模式 文件名;也可以把管道作为输入端。 gnu grep的几个特殊选项: grep "pattern" filename(s) 基本正则表达式元字符集(默认) grep -G "pattern" filename(s) 同上(默认) grep -E "pattern" filena...
Linux内核的bootsplash功能介绍

Linux内核的bootsplash功能介绍

Linux内核原版中是没有bootsplash功能的,就是启动进度条和console的背景图的功能。需要对其进行打补丁才能实现。官方网站:http://www.bootsplash.org,下载对应内核版本的bootsplash补丁,这样内核配置里就能选择了。对打上内核的补丁进行编译,一定要进到menuconfig里确认bootsplash的相关选项被选上。编译安装splashutilities和splash主题,主题在bootsplash的官方网站也有链...
Linux下创建1000个线程

Linux下创建1000个线程

要创建1000个线程,可以先执行ulimit -s 2048。这个问题要用程序的方法解决几乎是不可能的。因为按RedHat Linux 9.0的posix线程实现,每个线程的父进程都是当前控制台进程,而不是调用pthread_create的那个进程的。而另一方面,在一个进程中能创建的线程个数又主要受堆栈的限制:2G/允许的最大堆栈大小,在i386平台上,控制台进程默认的最大堆栈大小为8M,所以能创建的线程数为2G/8M = 256个。但是,这个8M的限制可...
Linux系统驱动编译及运行

Linux系统驱动编译及运行

一、手工加载测试1、insmod ./key_test.ko 加载驱动模块到内核2、cat /proc/modules |grep key_test 查看key_test模块在内核中的地址,不加过滤器可以看到全部加载的模块。3、lsmod 显示模块,这时可以看到所有的模块名字,后面跟的是主设备号和次设备号。4、rmmod key_test 把模块从内核里卸载。二、动态加载1、把key_test.c源代码放到内核源代码的/drives/char/下,因为这是...
Linux系统下malloc/free与new/delete的区别

Linux系统下malloc/free与new/delete的区别

由于malloc/free是库函数,不是运算符,他们不能执行构造函数和析构函数,只是负责分配内存。1、malloc与free是C /C语言的标准库函数,new/delete是C 的运算符。它们都可用于申请动态内存和释放内存。2、对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行...
Java开发中关于Hibernate对多表关联查询

Java开发中关于Hibernate对多表关联查询

由于公司项目的需要,我对Hibernate对多表关联查询研究了一下,现总结如下,供朋友参考。一、 Hibernate简介Hibernate是一个JDO工具。它的工作原理是通过文件(一般有两种:xml文件和properties文件)把值对象和数据库表之间建立起一个映射关系。这样,我们只需要通过操作这些值对象和Hibernate提供的一些基本类,就可以达到使用数据库的目的。例如,使用Hibernate的查询,可以直接返回包含某个值对象的列表(List),而不必...
Linux VI编辑器中的复制与粘贴

Linux VI编辑器中的复制与粘贴

Linux服务器管理最头疼的就是配置文件的配置。一般情况下配置文件都给出了示例,我们在修改配置文件的时候,最好保留好示例现场。将示例部分复制一份,然后再修改。这样的话,即使修改错误,通过对比示例可以及时发现错误所在。那么vi编辑器中的整行(多行)复制与粘贴就非常必要了。1、复制1)单行复制在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制;2)多行复制在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3...2、粘...
Linux内存之内存管理的实质

Linux内存之内存管理的实质

1. 内核初始化:Linux内核建立好内核页目录页表数据库,假设物理内存大小为len,则建立了[3G--3G+len]::[0--len]这样的虚地址vaddr和物理地址paddr的线性对应关系;内核建立一个page数组,page数组和物理页面系列完全是线性对应,page用来管理该物理页面状态,每个物理页面的虚地址保存在page->virtual中;内核建立好一个free_list,将没有使用的物理页面对应的page放入其中,已经使用的就不用放入了;...
Linux应用之突破多平台开发障碍Qt 4.4发布

Linux应用之突破多平台开发障碍Qt 4.4发布

奇趣科技近日发布了其旗舰产品Qt4.4。该新版本使开发人员首次能够将Web功能集成到本地桌面和移动设备应用中去。此外,该版本Qt 4.4还更具开扩意义的实现了,Windows、Macintosh和Linux操作系统以及移动设备之间跨平台的实现。它为创建跨越各种桌面系统和设备的应用及服务提供了一个通用框架。Qt 4.4更是将这些应用延伸至运行Windows Embedded CE操作系统的移动设备中去。Windows Embedded CE是一款运行在各类移...
Linux 内核学习感想

Linux 内核学习感想

说实话,学习Linux内核是一件极其艰难的事,是一件需要毅力的事情。可是有毅力的人不一定能真正的去理解Linux内核。个人感觉学习Linux内核首先需要对操作系统的实现具有浓厚的兴趣,其次要找到一个好的切入点,最后要有一定的理论基础。 上面提到的:兴趣,切入点,以及理论基础都是必要的。 理论基础是说你需要了解操作系统的基本概念,什么是操作系统,操作系统中的内存管理与进程管理(个人认为这是操作系统中的难点)是如何进行的,另外还要明白什么是中断,什么是系统...
<< 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 >>