![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
David 's blog
这个作者很懒,什么都没留下…
展开
-
【Linux】Linux简介
惭愧啊!接触Linux有两年了吧,到今天,才知道发行版,内核版,才知道Ubuntu,red hat 啥关系,才知道为什么之前装openssl库走的坑,为什么有的用yum命令,有的用apt......4. Linux系统简介Linux系统由Linus Torvalds (林纳斯·托瓦兹)于1991年发布在新闻组的内核发展而来,由于它在发布之初就免费和自由传播,支持多用户、多任务...转载 2020-04-01 14:02:54 · 508 阅读 · 0 评论 -
【Linux】使用openssl库得到文件的MD5值;解决16进制16字节长MD5值转换为32字节字符串
代码:参考了网上的一个,后来发现,这个代码问题太多了.....一下是我走的坑。。。。。#include <stdio.h>#include <string.h>#include <stdlib.h>#include <openssl/md5.h>#include <unistd.h>#include <sys/t...原创 2020-03-20 10:43:02 · 963 阅读 · 0 评论 -
Ubuntu linux 安装OpenSSL
一般来说著名的linux系统基本上分两大类:1 RedHat系列:Redhat、Centos、Fedora等2 Debian系列:Debian、Ubuntu等RedHat 系列:1 常见的安装包格式 rpm 包,安装rpm包的命令是 “rpm -参数”2 包管理工具 yum3 支持tar包Debian系列1 常见的安装包格式 deb 包,安装deb包的命令是 “dpkg -参数”...原创 2020-03-19 17:13:25 · 703 阅读 · 0 评论 -
【Linux】 recv select非阻塞
void task_client_handle(){ fd_set fdset; while(1) { FD_SERO(&fdset);//clear fd_set FD_SET(sockfd,&fdset); //将sockfd添加到fset集合中 struct timeval timeout...原创 2020-03-19 21:53:11 · 473 阅读 · 0 评论 -
【Linux】半同步半异步线程池
首先来复习一下什么是:阻塞、非阻塞、同步、异步阻塞:调用方在得到结果之前会一直等待;非阻塞:调用方在不能得到结果时,不会等待。打个比喻:David准备钓鱼回家买菜做饭。阻塞:钓鱼时一直守在鱼竿前等鱼上钩,就这样钓到鱼后去做别的事情。非阻塞:David抛出鱼竿后,没有鱼上钩,于是开始先买菜洗菜玩手机,鱼上钩后,再去处理鱼。同步:被调用方得到最终结果之后才返回给调用...原创 2019-04-02 17:30:43 · 265 阅读 · 4 评论 -
【面经总结 Linux】面试官:你知道Linux哪些常用命令?
自我介绍:(从没想过一个自我介绍要准备的,每次觉得自我介绍不重要,临场发挥就够了。可是每次临场发挥,都紧张,想起一句,蹦出一句,让人觉得很没有条理。。。很慌张。。。所以还是准备几句话。)今天您好,我叫xxx,今年xx岁,籍贯:xxxxxx市。现在就读于xxxx大学软件工程专业,目前是一名大三的学生,2020年毕业,。在学校主要学习的课程有:c/c++,计算机网络,操作系统,还有软件工程相关的...原创 2019-04-11 20:57:20 · 4554 阅读 · 2 评论 -
【Linux】在可执行程序中动态库和静态库的区别?静态链接、动态链接?各自有什么缺点?
什么是库文件?库文件是事先编译好的方法的合集。比如:我们提前写好一些数据公式的实现,将其打包成库文件,以后使用只需要库文件就可以,不需要重新编写。库文件分两种:静态库和动态库(也叫共享库)Windows系统静态库扩展名为:.lib 动态库扩展名为.dll;Linux系统下静态库的扩展名为.a 动态库的扩展名为.so;一、静态库(也称作归档文件):简单来说就是一组“准备好使用”状态...原创 2019-04-19 18:31:20 · 4190 阅读 · 2 评论 -
【Linux】几个关于fork的笔试题
第一题:打印几个A?分析:进入函数,遇到第一个fork(),产生子进程,父进程返回值为1,子进程返回值0;(1)父进程:遇到 || ,不执行,执行printf();(2)子进程:0 || fork(),执行fork()后,又一个子进程,并返回两个结果,0 和 1;不管结果如何,之后执行printf()(3)孙进程:执行printf()所以一共打印3个A执行结...原创 2019-07-18 21:50:10 · 334 阅读 · 0 评论 -
【Linux】系统调用实现原理(中断、特权、用户态内核态)
参考《程序员的自我修养》第十二章:系统调用与API(这章篇幅很短,20多页,1个小时便可以读完)一、系统调用与库函数1.系统调用函数是系统内核抛出来给用户空间调用的接口,系统调用由用户态调用,在内核态执行。系统调用的功能广泛,例如创建/退出进程和线程、进程内存管理、对系统资源访问如文件、网络、进程间通信、硬件设备等。Linux上使用0x80号中断作为系统调用的入口;Windows上...原创 2019-07-20 12:19:35 · 1061 阅读 · 0 评论 -
【C++】单例模式中的析构函数
最近写完项目,正是一波总结的时候。项目中用到了大量的单例模式,然而本以为写的轻车熟路的代码,结果却问题重重,单例模式如何析构?单例模式中如何保证线程安全?如何加锁?锁要封装成单例类嘛?这个单例类构造出1个对象会不会有问题?阻塞住会不会后面上锁的功能无法正常使用?还是锁不用单例模式封装?构造锁的对象时加static??......不测试不知道,一测试一堆问题需要解决,好,从头开始看。----...原创 2019-04-02 16:23:23 · 4503 阅读 · 3 评论 -
【Linux】项目:概要,分析,总结(持续更新)
项目名称:小区物业门禁卡系统编码工具:red hat6.3 Linux下sublime text工具编译工具:g++ makefile工程管理工具代码总量:1800行左右C/S架构: 一.client客户端 二.server服务器端一:客户端概要设计: 0.TcpServer.h TcpClient.h :最底层的2个class,socket那一系列函数封装...原创 2019-04-02 11:00:51 · 519 阅读 · 0 评论 -
【Linux基础】写Makefile文件
最近在写项目,10多个头文件和cpp文件,每次编译需要输入一大串,逼不得已,只能去写Makefile了。。。。如图:共有这么多头文件,还需要3个链接库,如果输入命令,需要:g++ -o main AfxStd.cpp Client.cpp Collect_cli.cpp...(省略..省下所有.cpp).... -levent -ljson -lpthread写Makefile如下...原创 2019-04-01 15:56:28 · 415 阅读 · 0 评论 -
Linux基础 : 目录 文件 权限 基本命令
一、Linux目录存储 文件类型 文件权限:一:认识Linux,区别windows:Linux:是服务版本的操作系统;命令行操作;内核相对较小;开源。 Windows:个人版操作系统;图形化操作界面;内科代码冗杂;闭源。 Linux:万物皆文件;Windows:万物皆窗口。二:目录存储结构:倒状树结构:三:根目录下文件:/bin:存储系统命令对应的可执行文件/hom...原创 2018-11-19 01:55:39 · 346 阅读 · 0 评论 -
Linux基础:预编译、编译、汇编、链接
四:预编译、编译、汇编、链接//详情参考《程序员的自我修养》1-6章精简版://在原文基础上做补充和修改参考原文:https://blog.csdn.net/weixin_40740059/article/details/84075653如图:c程序的4G虚拟地址空间划分:在text段中,只有普通局部变量是指令int gdata1 = 10; /...原创 2018-11-19 13:34:26 · 2184 阅读 · 0 评论 -
【Linux编程】进程间通信:有名管道(PIPE)、无名管道(FIFO)
进程间的通信:即将一个进程的数据传递给另一个进程。通信方式:1.管道 2.信号量 3.共享内存 4.消息队列 5.套接字socket(网络通信,不同主机之间的进程) 一、什么是管道:只存在于内存中的文件,对这个文件的操作要通过两个进程进行。一个进程向管道中写的内容被管道另一端的进程读出。写入的内容添加在管道缓冲区的末尾;读出要从缓冲区的头部进行。管道文件:无名管道 有名...原创 2019-01-02 23:27:53 · 718 阅读 · 0 评论 -
【Linux编程】进程间通信:信号量
一张图了解:原创 2019-01-03 13:50:29 · 125 阅读 · 0 评论 -
【Linux编程】IO复用 poll和epoll
原创 2019-03-04 23:59:59 · 152 阅读 · 0 评论 -
【Linux编程】I/O复用1:select
(画板图 笔记更新啦!)原创 2019-03-01 22:55:13 · 123 阅读 · 0 评论 -
【Linux编程】线程 多线程 线程同步
(Windows的画板真的太好用了 ,更新笔记喽.....)原创 2019-03-02 22:13:08 · 135 阅读 · 0 评论 -
【Linux编程】阻塞 非阻塞 同步 异步 && 5种IO模型
原创 2019-03-18 15:35:22 · 134 阅读 · 0 评论 -
主函数的3个参数问题
主函数的参数int main(int argc,char * argv[],char *envp){ return 0;} 第一个参数:int argv,即argument count,参数的个数,整型。第二个参数:char *argv[],即argumentvalue,argv指向一个字符串的首地址,是字符串数组指针。第三个参数:操作系统运行程序时通过...原创 2018-10-16 23:23:45 · 513 阅读 · 0 评论