随笔分类 -  系统编程

存储方面的面试题
摘要:1)简述一下raid0,raid1,raid5 raid0:所有raid级别中存储性能最高,其原理是把连续的数据分散到多个磁盘上存取,这样系统有数据请求(读写)就可以被多个磁盘并行执行,但是没有数据冗余,安全性低。 raid1:磁盘数据镜像冗余,当原始数据繁忙时,可直接从镜像读取数据,提高读取性能( 阅读全文

posted @ 2018-04-09 16:29 标配的小号 阅读(1910) 评论(0) 推荐(0) 编辑

C语言指针入门
摘要:指针指包含地址 声明指针: int num;声明整数 int *num;声明指针,下面的声明也是等价的,空格的使用指示个人爱好 int* num; int * num; int *num; int*num; 阅读声明: const int *pci; 倒过来读比较好看,pci是个指针变量,pci是个 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(299) 评论(0) 推荐(0) 编辑

C语言函数指针的使用
摘要:使用函数指针时一定要注意,因为c不会检查参数是否正确 区分返回指针的函数和函数指针 int *f4();返回一个整数指针 int (*f5)();返回整数的函数指针 int * (*f6)();返回整数指针的函数指针 传递函数指针例子 #include<stdio.h> int add(int a, 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(147) 评论(0) 推荐(0) 编辑

多线程
摘要:以下两个程序交替运行,编译时gcc -o thread1 thread1.c -lpthread ,如果需要传入一个参数,只需要在创建线程时把第四个参数改为传入的参数就可以了,NULL改为null不能编译通过,pthread_join使一个线程等待另一个线程结束,因为sleep所以运行一秒就停下等待 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(90) 评论(0) 推荐(0) 编辑

C语言文件操作
摘要:下列代码创建一个a.txt文件,权限777,fp为返回码 #include<stdio.h> #include<fcntl.h> int main(){ int fp; fp=open("a.txt",O_CREAT,777); printf("%d\n",fp); close(fp); retur 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(219) 评论(0) 推荐(0) 编辑

c的动态内存管理
摘要:在linux系统下使用malloc提示警告,解决方法,加入头文件<stdlib.h> 首先来个基本的例子 int *p=(int *)malloc(sizeof(int));(当malloc无法分配内存时会返回null,所以在使用它返回的指针前最好先检查null是否为空,如果不为空再使用p指针) * 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(115) 评论(0) 推荐(0) 编辑

汇编1
摘要:mov bx,1000H mov ds,bx mov al,[0] 以上三条语句目的是读取10000H单元的内容放到al中 ds寄存器通常用来村发给你要访问数据的段地址 []中的数字表示内存单元的偏移地址 注意不能直接吧数据送入段寄存器中,例如ds等,所以这里先把数据送入bx,然后再把bx送入ds 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(175) 评论(0) 推荐(0) 编辑

汇编入门基础与helloworld
摘要:一个存储器拥有128个存储单元,可存储128个byte(字节),一个bite则又是由8个二进制位即bit(比特)组成,bit是计算机的最小信息单位。 总线分为地址总线,控制总线,数据总线 一个cpu有n根地址线,则说这个cpu的地址总线宽度为n,该cpu最多能寻找2的n次方个内存单元 8根数据总线可 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(199) 评论(0) 推荐(0) 编辑

linux系统调用的三种方法
摘要:通过glibc提供的库函数 [23:02:14] gcc chmodtest.c [23:02:17] ls -l kali //记得先创建这个文件 -rwxrwxrwx. 1 root root 0 May 10 22:56 kali [23:02:25] ./a.out chmod succee 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(223) 评论(0) 推荐(0) 编辑

execve函数的介绍与使用
摘要:#include<stdio.h> #include<unistd.h> int main() { char *filename[]={"./BP",NULL};//BP是c文件编译链接后产生的可执行文件,目的是打印一条语句 char *envp[]={0,NULL};//如果依赖于新环境变量,这里 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(3110) 评论(0) 推荐(0) 编辑

进程间通信——共享内存
摘要://shmdata.h //test if define #ifndef _SHMDATA_H_HEADER #define _SHMDATA_H_HEADER #define TEXT_SIZE 100 struct shared_use_set { int readed;//为1时可写入,为0时 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(159) 评论(0) 推荐(0) 编辑

进程间通信——管道通信
摘要:pipe管道通信 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<sys/types.h> int main(){ pid_t childpid; int fd[2]; pipe( 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(146) 评论(0) 推荐(0) 编辑

网络编程
摘要:客户端代码如下 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<unistd.h> #include<sys/stat.h> #include<arpa/inet.h> #include<sys/socket.h> i 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(111) 评论(0) 推荐(0) 编辑

进程
摘要:设置环境变量 getenv(string)获得环境变量 putenv(string)该stringj需要带=号 setenv(name,values,int overwrite)如果环境变量已存在,且overwirte为0,则始终不改变环境,否则永远改变环境 unsetenv(name)移除name 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(87) 评论(0) 推荐(0) 编辑

fcntl获取和修改文件打开状态标志
摘要:[root@bogon code]# cat b.c #include<stdio.h> #include<error.h> #include<unistd.h> #include<fcntl.h> int main() { int fd=open("a.c",O_RDONLY);//以可读方式打开 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(216) 评论(0) 推荐(0) 编辑

汇编2——完整的例子集合
摘要://countString.asm 是用来自动统计字符串长度,然后输出该字符串 [08:12:56] vi countString.asm [08:13:28] nasm -f elf64 countString.asm [08:13:30] ld -o countString countStrin 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(199) 评论(0) 推荐(0) 编辑

数据结构与算法面试题80道
摘要:因为原文链接已挂,所以这里无法给出原文链接,但还是要感谢一下原文作者July 1.把二元查找树转变成排序的双向链表 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不能创建任何新的结点,只调整指针的指向。 10 / \ 6 14 / \ / \ 4 8 12 16 转换成双 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(547) 评论(0) 推荐(0) 编辑

数组中最大和的子数组
摘要:只需要输出最大子数组和结果 [08:27:34] gcc sonarrysum.c [08:27:37] ./a.out 18 [08:27:39] cat sonarrysum.c #include<stdio.h> void max(int a[],int len) { int i,max=0, 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(190) 评论(0) 推荐(0) 编辑

双向链表
摘要:我主要说一下双向链表的创建,顺便说了一下删除尾节点的实现 [00:51:51] gcc doubledirectlink.c [00:51:55] ./a.out 1->2->3->4->5now del last 1->2->3->4deled [00:51:57] cat doubledirec 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(144) 评论(0) 推荐(0) 编辑

排序算法——快速排序
摘要:原理:文字说不清楚,直接在代码解释了 [08:32:22] gcc quicksort.c [08:32:24] ./a.out 1 2 3 4 5 6 7 8 9 10 [08:32:26] cat quicksort.c #include<stdio.h> void swap(int *a,in 阅读全文

posted @ 2017-10-25 18:06 标配的小号 阅读(227) 评论(0) 推荐(0) 编辑

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示