
Unix/Linux
文章平均质量分 67
coolibin
这个作者很懒,什么都没留下…
展开
-
current宏的作用
在2.6的内核上允许内核栈的大小在4K和8K之间选择,于是,根据内核的配置,在thread_info.h中,加入了下面的一段代码#ifdef CONFIG_4KSTACKS#define THREAD_SIZE (4096)#else#define THREAD_SIZE (8192)这个大小的不同会影响内核堆栈的表示方法和current转载 2013-08-07 20:15:00 · 1374 阅读 · 0 评论 -
Linux笔记
1.配置IP和子网掩码 ifconfig eth0 192.168.1.2 netmask 255.255.255.0查看ifconfig eth0配置完毕后使用service network restart使命令生效。2.netstat显示网络连接、路由表、网络接口信息。3.后台运行命令在命令后加 ‘&’ 即可。4.ct原创 2013-03-22 15:45:27 · 1293 阅读 · 2 评论 -
嵌入式Linux笔记
1. BootLoader基本原理 由于BootLoader的实现依赖于CPU的体系结构,因此大多数BootLoader都分为stage1和stage2两大部分。依赖于CPU体系结构的代码,如设备初始化代码等,通常都放在stage1中,而且通常都用汇编语言来实现,以达到短小精悍的目的;而stage2则通常用C语言实现,这样可以实现更复杂的功能,而且代码会具有更好的可读性和可移原创 2013-03-23 15:43:00 · 1146 阅读 · 0 评论 -
Linux驱动笔记
1.Linux设备类型:字符设备,块设备,网络设备。(1)字符设备 作为字节流来处理。至少实现open,close,read,write系统调用。在文件系统的/dev目录下。(2)块设备 整块IO操作。与字符设备接口不同。在文件系统的/dev目录下。(3)网络接口 网络接口一般是硬件,也可以是软件,如loopback。并不在文件系统/dev目录下,没有路径原创 2016-08-23 11:20:32 · 572 阅读 · 0 评论 -
The Linux Programming Interface 笔记之malloc和free的实现
Althoughmalloc() and free() provide an interface for allocating memory that ismuch easier to use than brk() andsbrk(), it is still possible to make various programmingerrors when using them.原创 2017-02-04 23:20:20 · 698 阅读 · 0 评论 -
当进程退出后,动态申请的内存会自动释放吗
stackoverflow有人问了这么一个问题,下面这段程序执行完毕后,malloc的内存会释放吗int main () { int *p = malloc(10 * sizeof *p); *p = 42; return 0; //Exiting without freeing the allocated memory}赞数最多的这么回答:It depends原创 2017-02-04 20:50:03 · 12940 阅读 · 0 评论 -
Linux笔记--二
1、Unix IPC分类:原创 2017-02-03 17:20:23 · 859 阅读 · 0 评论 -
进程与线程
1、多进程比多线程的缺点:> It is difficult to share information between processes. Since the parent andchild don’t share memory (other than the read-only text segment), we must usesome form of interprocess原创 2017-03-14 23:42:56 · 511 阅读 · 0 评论 -
Close on exec by deault
Excuse me son, but your code is leaking !!!I have written over the years about leaked file descriptors, and what a pain they have been to SELinux.C on Unix many many years ago was转载 2017-04-13 23:36:46 · 745 阅读 · 0 评论 -
Linux内核源码树学习:Kconfig和Makefile
Linux内核源码树的每个目录下都有两个文档Kconfig和Makefile。分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单。在执行内核配置make menuconfig时,从Kconfig中读出菜单,用户选择后保存到.config的内核配置文档中。在内核编译时,主Makefile调用这个.config,就知道了用户的转载 2016-07-01 14:30:57 · 650 阅读 · 0 评论 -
awk之变量篇
转自Eagle_6151.数值变量和字符串变量数值常量可以为整数,浮点数,或科学计数法,字符串括在双引号1.1初始化与强制类型转换 未经初始化的变量的值是0或者"",究竟是哪个取决于他们被使用时的上下文。 强制将字符串转换为数字: name + 0 将数字转换成字符串的方转载 2015-12-01 23:03:55 · 1340 阅读 · 0 评论 -
Make工程管理器
概述:所谓工程管理器,是指管理较多的文件。人们通过利用Make工具来自动完成编译工作。这些工作包括:如果仅修改了某几个源文件,则只重新编译这几个源文件;如果某个头文件被修改了,则重新编译所有包含该头文件的源文件。利用这种自动编译可大大简化开发工作。Make工具通过Makefile文件来完成自动维护编译工作。Makefile主要定义了源文件之间的倚赖关系,说明了如何编译各个源文件并连接生成可执行文件原创 2013-04-01 22:22:32 · 1391 阅读 · 0 评论 -
Linux及QT时间设置
转自:alada0071.首先,转一下:问:Linux下如何保存设置的系统时间?答:分以下步骤进行:(1)通过开发板控制台设置开发板的当前系统时间:date [MMDDhhmm[[CC]YY][.ss]]例如:date 010410462008(2)将系统时间写入RTC:hwclock -w读出检验一下,写入是否正确:hwclock -r(3转载 2013-03-25 20:57:23 · 2362 阅读 · 0 评论 -
linuxshell中"2>&1"含义
脚本是: nohup /mnt/Nand3/H2000G >/dev/null 2>&1 & 对 于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_result ,然后复制标准输出到文件描述符2(STDERR_FILENO)转载 2013-11-06 21:44:56 · 750 阅读 · 0 评论 -
UNIX环境高级编程第二版代码笔记
在apue.2e目录下执行make,有/usr/include/i386-linux-gnu/bits/timex.h:31:7: error: expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘.’ token原因:在apue.2e/ipp.h中定义了一个宏定义status和/usr/include/i386-linux-gnu/bits/timex.h中的成员status冲突解决方法:原创 2013-07-31 15:40:48 · 2525 阅读 · 1 评论 -
Ubuntu 12.04中文输入法的安装
Ubuntu 12.04中文输入法的安装 Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等。其中Scim和Ibus是输入法框架。在Ubuntu的中文系统中自带了中文输入法,通过Ctrl+Space可切换中英文输入法。这里我们主要说下Ubuntu英文系统中,中文输入法的安装。安装输入法的第一步,是安装语言包。我们选择System S转载 2014-04-03 20:47:53 · 931 阅读 · 0 评论 -
win7硬盘安装Ubuntu12.04 64位时显示Error 15: File not found.
安装Ubuntu12.04 -64位时,用EasyBCD建好引导文件重启电脑后出现如下错误:Error 15: File not found原因一个是安装文件所在盘符不对,另一个是文件名。Ubuntu12.04 32位的ISO包解压后casper文件夹下内核文件为vmlinuz,而64位解压后casper文件夹下内核文件为vmlinuz.efi。用EasyBCD创建的引导文件中内核文件所用原创 2014-04-04 15:19:22 · 11272 阅读 · 1 评论 -
Ubuntu与Win7双系统下,改变分区导致error:no such partition grub rescue>
我电脑装的是windows和ubuntu双系统。在windows下改变分区,包括新建分区、删除分区、合并分区等操作,会造成Ubuntu的grub找不到分区,以致进入grub rescue模式。这时可以通过如下方式恢复。原创 2014-07-24 22:41:44 · 5012 阅读 · 0 评论 -
Ubuntu6.10 以后默认shell为dash,非bash
目录Dash as /bin/shWhy was this change made?My production system has broken and I just want to get it back up!I am a developer. How can I avoid this problem in future?[[[(($((n++)), $((--n))转载 2015-02-04 10:12:45 · 2021 阅读 · 0 评论 -
长期运行程序的文件描述符泄漏问题
摘自https://oroboro.com/file-handle-leaks-server/So you’ve created a socket server that opens sockets over TCP/IP. After running it for a few hours under heavy load the operating system kills yo转载 2017-07-26 17:13:18 · 2760 阅读 · 0 评论