
Linux开发
文章平均质量分 69
kangquan2008
一是希望我能把以前的积累再次重新的梳理一次,查缺补漏。二也是在这世界留下点记录。。表明我曾经来到过这世界,学到过这些东西。。
展开
-
磁盘及Linux文件系统的一些参考资料
硬盘发展简史、当今主流硬盘知识介绍、未来硬盘技术前瞻 http://bbs.nhzj.com/thread-126128-1-1.htmlLinux 下查看块大小命令,默认4096http://www.net527.cn/a/caozuoxitong/Linux/9798.html更改linux文件块大小http://www.bizsn.com/info/a/fuwuq原创 2012-04-30 15:16:22 · 1034 阅读 · 0 评论 -
unix环境高级编程 学习笔记5 标准IO库
第五章 标准IO库 [仅作学习笔记,其中可能有误解] 1. 标准IO处理很多细节,如缓冲区分配,优化长度执行IO等,与系统调用的文件IO形成对比2. 标准IO是围绕流进行的(stream)3. 流的定向 +标准IO文件流可用于单字节和多字节(宽) +初始流是不定向的,当使用宽定向函数时就将流设置为宽定向,若用单字节IO函数就为字节定向#include FILE * freopen(原创 2011-11-15 17:34:03 · 1094 阅读 · 0 评论 -
unix环境高级编程 学习笔记4
//unix系统调用的文件操作函数是一般不带f开头的,当既有不带,也有带的时候,带的通常是有以文件描述符为参数的函数。如:stat、fstat第四章 文件和目录 [仅作学习笔记,其中可能有误解]1. 文件的属性stat、fstat、lstatstruct stat{ mode_t st_mode; // 文件类型和权限( 如:S_IFEG and S_IRUSR) i原创 2011-11-14 19:49:02 · 971 阅读 · 0 评论 -
Ubuntu下配置ftp Telnet 消去中文乱码http://blog.sina.com.cn/s/blog_674d87000100pwvh.html
1. 如果是lftp,其在Debian Ubuntu中的安装只需键入# sudo apt-get install lftp2.设置中文字符,安装lftp后依次键入#lftp#set ftp:charset gbk然后就可以登录ftp了。比如在nju可以登录CS的ftp# lftp cs.nju.edu.cn -u download会提示输入’口令‘,输入即可查看ftp的转载 2011-11-09 13:34:04 · 2840 阅读 · 0 评论 -
gdb 命令总结
原创 2014-02-07 23:53:41 · 1243 阅读 · 0 评论 -
MySQL技术内幕InnoDB存储引擎 读书笔记
MySQL技术内幕InnoDB存储引擎 读书笔记原创 2014-02-08 16:31:08 · 1533 阅读 · 0 评论 -
Linux性能调优
Linux性能调优1. 调优的时间点:1.1. 初始阶段1.2. 遇到瓶颈的时候2. 调优的注意事项:2.1. 做好变更管理控制变量,每次更改不能多于一个变量不能在生成环境中随意调优2.2. 要多次测试预期的调优结果是否能重现3. 配机器阶段的考虑:为使系统达到一个特定的性能目标,调优应当在设计和安装阶段开始。原创 2013-07-22 21:47:13 · 1931 阅读 · 0 评论 -
产生segment fault的原因及调试方法总结
段错误(以下定义摘自C专家编程)段错误通常是由于解除引用一个未初始化或非法值的指针引起的。以发生频率为序,最终可能导致段错误的常见编程错误是:1、坏指针错误:在指针赋值之前就用它来引用内存;或者向库函数传递一个坏指针(如果调试器显示系统程序中出现了段错误,很可能并不是系统程序引起的段错误,问题可能就出现在自己的代码中);或者指针被释放后还继续访问它的内容。2、改写错误:越过数组边界写入原创 2014-03-11 21:31:34 · 8741 阅读 · 0 评论 -
从一道面试题(死循环里分配内存)阐述Linux的内存管理
int cnt = 0; while(1) { ++cnt; ptr = (char *)malloc(1024*1024*128); if(ptr == NULL) { printf("%s\n", "is null"); break; } } printf("%d\n", cnt);这个程序会有怎样的输出呢?原创 2014-05-23 12:59:29 · 2262 阅读 · 0 评论 -
Linux IPC简单总结
###Linux IPC###---------------##消息传递##- 信号: 非亲缘,传递信息少,只能是控制信息而不是数据信息 - 管道: 要亲缘,无边界字节流,先进先出,消耗掉就没了,没有窥探功能MSG_PEEK - FIFO: 非亲缘,无边界字节流,先进先出,消耗掉就没了,没有窥探功能MSG_PEEK - Socket: 非亲缘,边界可有可原创 2014-09-11 19:51:10 · 1693 阅读 · 0 评论 -
Linux内核数据结构中链表的实现
一般来说,我们实现数据结构通常是把指针放在目标struct中,也就是说:struct data_strct{ int data; struct data_struct *prev; struct data_struct *next;};但链表在linux中大量地使用,很多struct都用了链表来实现,能不能提供一套通用的接口来保证这些struct实现链表的功能,原创 2013-01-03 14:49:38 · 1094 阅读 · 0 评论 -
shell 特殊变量及比较操作
表格 B-1. 特殊的shell变量变量含义$0脚本名字$1位置参数 #1$2- $9位置参数 #2 - #9${10}位置参数 #10$#位置参数的个数"$*"所有的位置参数(作为单个字符串) *"$@"所有的位置参数(每个都作为独立的字符串)转载 2013-01-24 14:45:34 · 721 阅读 · 0 评论 -
fork函数注意的几点
#include #include #include #include // file operations the character\line\block functions contain the stream in the end.other not.int main(){ int num = 0; pid_t pid; printf("excute begin!\n"原创 2011-08-30 21:37:18 · 767 阅读 · 0 评论 -
使用bochs对内核进行调试
1.安装http://www.cnblogs.com/bitbyte/archive/2012/10/31/2747216.html2. 注意apt-get install方式安装是无法调试的,需要使用源码安装,并启动选项--enable-debugger --enable-disasm原创 2012-12-01 14:01:21 · 881 阅读 · 0 评论 -
linux 进程(关于守护进程、检查一个进程是否活着、如何写一个进程号文件)
本文主要包括三个部分: 一是如何实现一个守护进程,二是如何检测一个进程是否活着,三是保证某一执行文件只有一个实例在运行。/* * 1.守护进程 */守护进程的最大特点就是脱离了中断,Linux提供了一个系统调用daemon(),要想自定义实现的话,主要包括以下六个步骤:1.第一步是使用umask函数,把所有的文件屏蔽字置0。文件屏蔽字是可以继承的,当你有相关操作时,如原创 2012-10-14 21:31:28 · 7796 阅读 · 0 评论 -
C程序存储空间分布
<!--@page {margin:0.79in}td p {margin-bottom:0in}p {margin-bottom:0.08in}--> 某实习笔试曾考程序的存储空间分布: high addesscommand argument&e原创 2011-08-30 20:28:11 · 1017 阅读 · 0 评论 -
大端 小端
#include#include#define BYTE unsigned char#define WORD unsigned shortunion{// 利用union能提供数据多个视角的特性来验证struct{BYTE bll:4,blr:4,bh;}byte;struct{WORD w;}word;}big_small_endian;int main()原创 2011-08-30 13:07:29 · 673 阅读 · 0 评论 -
umask
腾讯的一道笔试题中给一个umask值,问当前用户,组用户和其他用户的权限,不知道什么叫umask.下面是介绍,备忘一下:转自:http://www.szstudy.cn/showArticle/53978.shtml我们创建文件的默认权限是怎么来的?如何改变这个默认权限呢?umask是什么?当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是um转载 2011-09-25 09:48:08 · 878 阅读 · 0 评论 -
makefile
#makefile for ftp#定义宏CC= gccCFLAGS= -c -Wall -O -sharedLDFLAGS= -lpthreadGC2 -lws2_32 -I"../lib/pthread" -L"../lib/pthread" # -shared 会报"ftp.exe不是有效的win32应用程序"错误.LD= gccOBJS= debug.o util原创 2011-09-24 21:29:00 · 773 阅读 · 0 评论 -
x86的段式存储-实模式与保护模式
http://www.cnitblog.com/ygb/articles/8872.html在 X86 系列中, 8086 和 8088 是 16 位处理器,而从 80386 开始为 32 位处理器, 80286 则是系列从 8088 到 80386, 也就是从 16 位到 32 位过渡的一个中间步骤。 80286 虽然仍是 16 位处理器,但是在寻址方式上开始了从“初地址模式”到转载 2012-12-01 13:58:46 · 1132 阅读 · 0 评论 -
在Linux下产生并调试core文件
在Linux下产生并调试core文件from :http://blog.youkuaiyun.com/borefo/article/details/5029555先看看我用的是个什么机器:$ uname -aLinux dev 2.4.21-9.30AXsmp #1 SMP Wed May 26 23:37:09 EDT 2004 i686 i686 i386 GNU/转载 2011-12-01 23:23:25 · 2193 阅读 · 0 评论 -
unix环境高级编程 学习笔记3
第三章 文件IO[仅作学习笔记,其中可能有误解]1. unix 系统中的IO是POSIX.1和Single UNIX SPecification中的一部分,不是ISO C的组成部分。这一章的IO函数是不带缓冲的,与ISO(标准)C的带缓冲IO相对应。2. 对于内核来讲,所有打开的文件都通过文件描述符[非负整数]来引用。当打开一个文件时,有内核返回一个描述符给进程。3. 0与标准输原创 2011-11-14 19:47:19 · 820 阅读 · 0 评论 -
TCP中在发送的数据的ACK未回来前,能继续发送其他数据包吗?
##基础##- 对应层数据的名称 - Application Package - Translation Segment - Networking Packet - DataLink Frame- TCP是一种基于字节流的协议,TCP 中的ACK是接收端期待发送端下一个发来的数据包的序列号- MSS 是在建立连接原创 2014-09-13 12:51:46 · 5818 阅读 · 0 评论