Welcome 微信登录

首页 / 操作系统 / Linux

经验分享:对Java中的线程感想

经验分享:对Java中的线程感想

1.进程和线程的区别 通俗一点说,进程就是程序的一次执行,而线程可以理解为进程中的执行的一段程序片段。 用一点文词说就是,每个进程都有独立的代码和数据空间(进程上下文);而线程可以看成是轻量级的进程。一般来讲(不使用特殊技术),同一进程所产生的线程共享同一块内存空间。 同一进程中的两段代码是不可能同时执行的,除非引入线程。 线程是属于进程的,当进程退出时该进程所产生的线程都会被强制退出并清除。 线程占用的资源要少于进程所占用的资源。 进程和线程都可以有优...
Linux配置C,C++编译环境系列一之环境配置

Linux配置C,C++编译环境系列一之环境配置

环境准备刚装好的系统中已经有GCC了,但是这个GCC什么文件都不能编译,因为没有一些必须的头文件,所以要安装build-essential这个软件包,安装了这个包会自动安装上g++,libc6-dev,linux-libc-dev,libstdc++6-4.1-dev等一些必须的软件和头文件的库。可以在新立得里面搜索build-essential或输入下面命令:sudo apt-get install build-essential测试环境安装完成后写一个...
Linux的内存及io映射

Linux的内存及io映射

Linux会将物理地址映射为虚拟地址,所以要在内核中操作寄存器或者外部设备,就必须找到其相应的虚拟地址。一般来说,io映射相关定义会放在include/arch-xxx/io.h中。而内存相关定义会在memory.h中而实际的映射操作,一般由iotable_map和memtable_map函数来完成,每种架构实际操作的位置都不尽相同,需要查询。还有一种动态映射的方法,用的是ioremap函数。通过以上概念,我们就能方便的找到linux映射相应的定义和代码了...
S3被指缺乏Linux驱动开发能力

S3被指缺乏Linux驱动开发能力

上周S3公布了Chrome 540 GTX显卡,S3声称这是接口强大的高清显卡,同时支持HDMI和DisplayPort以及DVI。新闻稿中宣传Chrome 540 GTX支持Linux和OpenGL 3.0。不过Linux用户最近指出,S3的Linux驱动根本是遥遥无期。 这些 Linux用户讨论最多的就是Linux平台上的OpenGL 3.0支持问题。S3的官方新闻稿表示Chrome 540 GTX支持Linux,甚至提到了GPGPU引擎。不过Lin...
Linux 兼容内核 (longene) 0.2.3 版 (UnifiedKernel-0.2.3) 发布

Linux 兼容内核 (longene) 0.2.3 版 (UnifiedKernel-0.2.3) 发布

2009 年 2 月 12 日,Linux 兼容内核项目开发组正式发布了 Linux 兼容内核 0.2.3 版本。该版本在 0.2.2-1 版的基础上,将 Wine 的注册表管理机制整体移植到内核,使得应用程序运行效率有了一定的提高。兼容内核项目计划及项目进展:一、兼容内核项目是什么兼容内核项目是一个开源的计算机操作系统内核计划,它试图利用 Linux 内核材料来构建一个 MS Windows 内核的替代品,使之在内核层面上高效地运行为 Windows 平...
Linux Kernel网络参数调优

Linux Kernel网络参数调优

Linux环境下在/etc/sysctl.conf 中加入下面的配置,# 开启TCP滑动窗口以便程序可以使用TCP数据包扩展位来增大滑动窗口的大小,提高网络性能 Fedora和很多发行版已经默认开启net.ipv4.tcp_window_scaling = 1# 开启SYN Cookie,以便更好的应付SYN洪水之类过多连接请求的情况,一些发行版已经开启该项,Fedora默认没有开启net.ipv4.tcp_syncookies = 1# 下面四项增大TC...
iconv_linux下字符集编码转换轻松实现

iconv_linux下字符集编码转换轻松实现

在Linux上进行编码转换时,既可以利用iconv函数族编程实现,也可以利用iconv命令来实现,只不过后者是针对文件的,即将指定文件从一种编码转换为另一种编码。一、利用iconv函数族进行编码转换iconv函数族的头文件是iconv.h,使用前需包含之。#include <iconv.h>iconv函数族有三个函数,原型如下:(1) iconv_t iconv_open(const char *tocode, const char *from...
浅谈Linux应该学习

浅谈Linux应该学习

一.为什么要学Linux? 当然最重要是爱好和兴趣!如果你这种必要学,或者根本不喜欢,请不要浪费时间,你学也学不好! 二.起步 你应该为自己创造一个学习Linux的环境--在电脑上装一个Linux或unix 问题1:版本的选择 北美用RedHat,欧洲用SUSE,桌面mandrake较多,而debian是技术最先进的Linux 开发人员中用debian的最多,其次是redhat,从全球Linux各应用领域市场份额来看 无疑redhat是最多的,此外还有很多...
09年2月编程语言排行榜[图文]

09年2月编程语言排行榜[图文]

2009年2月Tiobe编程语言排行榜发布,前十位的排名没有太大变化,C语言在取得了08年年度编程语言后增势迅猛,相比去年同期增长了0.98%。本期前20名的榜单中,两种同样以商业数据处理擅长的编程语言COBOL和RPG的排名变化值得我们关注。COBOL本期跌出前20名,本期排在22位 (上期排名17);RPG语言进入前20名,排在第19位(上期排名21)。 2009年2月榜单 COBOL语言 COBOL于1960年正式发布,是一种面向数据处理的、面向文件...
程序员如何选择合适的程序语言?

程序员如何选择合适的程序语言?

由于个人专业缘故,我一直在寻找最好的工具。大家都知道,由于在软件多种多样的原因,我们在开发过程中,需要选择各式各样的程序语言进行工作。也正因如 此,我经常被软件开发的初学者问及:“究竟应该学习哪种语言?”。但是当我反问他们想要做些什么的时候,他们却变得一脸茫然。原来这些人一直认为,一种最 佳语言可以解决所有的问题。每个人都知道,这个世界上并不存在万能的“银弹”,但是,我却可以为您推荐几款在专业领域中更适合的,适用性更广的程序语言。 鉴于此,我列出了如下的一...
在Linux下使用用Valgrind查找内存泄漏和无效内存访问

在Linux下使用用Valgrind查找内存泄漏和无效内存访问

Valgrind是x86架构Linux上的多重用途代码剖析和内存调试工具。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C语言中的malloc和free或者C++中的new和delete。如果你使用了未初始化内存,在数组末端外设置内存或是忘记释放指针,Valgrind都可以检测出来。尽管Valgrind还可以做其它的工作,本教程仍然集中在如何使用它来发现内存相关错误,因为这也程序员经常出现的错误。Windows用户不必沮丧,虽然在Windows上...
LinuxDNA高性能Linux Kernel编译成功

LinuxDNA高性能Linux Kernel编译成功

一个使用Intel C/C++编译器编译的LinuxDNA兼容Linux内核已经完成。新编译内核的价值不仅在于它没有出错,而在于它在大多数情况下已经可以作为一个兼容Linux内核开机进入Gentoo Linux系统。相关阅读:高性能Linux Kernel项目—LinuxDNA LinuxDNA项目的目标是,利用Intel编译器来编译出于兼容于目前Linux系统的内核,现在已经基本完成。但在Linux内核转移到2.6.23之前,还有几个问题尚需解决。 ...
<< 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 >>