
Linux
文章平均质量分 55
君慕蓉
生活就像一条假装平静的小河
展开
-
搭建属于自己的yum软件源
一、搭建前准备关闭防火墙和selinux确认有并且启动了httd服务确认有createrepo命令原创 2021-08-25 12:05:17 · 405 阅读 · 0 评论 -
高性能服务器框架
性能对服务器来说是至关重要的,毕竞每个客户都期望其请求能很快地得到响应。影响服务器性能的首要因素就是系统的硬件资源,比如 CPU的个数、速度,内存的大小等。不过由于硬件技术的飞速发展,现代服务器都不缺乏硬件资源。因此,我们需要考虑的主要问题是如何从"软环境"来提升服务器的性能。服务器的"软环境",一方面是指系统的软件资源,比如操作系统允许用户打开的最大文件描述符数量;另一方面指的就是服务器程序本身,即如何从编程的角度来确保服务器的性能,这是本节要讨论的问题原创 2021-03-18 23:57:36 · 267 阅读 · 0 评论 -
Ubuntu新用户恢复文件和目录颜色
新买的腾讯云,装上Ubuntu系统之后发现,root用户下,对应的文件和目录名字都是带有颜色的,而自己创建的用户却没有颜色。原创 2021-01-19 23:13:45 · 818 阅读 · 0 评论 -
对linux内核网络协议栈研究
/usr/src/linux/include/linux/udp.hstruct udphdr { __u16 source; //16位源端口号 __u16 dest; //16位目的端口号 __u16 len; //表示此次发送的数据报的长度,16位 __u16 check; //校验和};...原创 2020-10-24 13:14:14 · 240 阅读 · 0 评论 -
Linux内核模块编程
linux内核模块是可以根据需要加载和卸载到内核中的代码片段。 它们扩展了内核的功能,而无需重启系统。 例如,一种类型的模块是设备驱动程序,它允许内核访问连接到系统的硬件。 没有模块,我们必须构建单片内核并将新功能直接添加到内核映像中。 除了拥有更大的内核之外,这还有一个缺点,即每次我们想要新功能时都需要我们重建和重启内核。原创 2020-10-16 14:38:24 · 671 阅读 · 0 评论 -
mmap拷贝文件与用常规文件IO拷贝文件效率对比
通常我们读写文件时,都是用系统提供的write和read函数,但是我们都知道文件IO函数操作文件流效率要低于mmap,因为mmap相对write/read省去将数据拷贝到用户态的操作。那么他们之间的差距有多大呢,我们来用事实说话。原创 2020-09-04 17:54:08 · 821 阅读 · 0 评论 -
mmap ---- 内存映射原理
mmap是一种内存映射文件的方法,即将磁盘上的内容映射到进程的虚拟地址空间上来,这样我们就可以通过指针来操作这一块数据,而不必用open和write来读写这段数据。并且,我们在进程空间对该段数据的操作,会被自动同步到磁盘上,这样就是进程间通信共享内存的实现原理,在一个进程里可以直接操作磁盘上某段数据,如果两个或者多个进程共享该数据段,那么另一个进程就可以得到该进程对共享数据的修改。原创 2020-08-31 19:21:57 · 770 阅读 · 0 评论 -
为CloudDisk项目加上log日志系统
鉴于该系统定位为分布式高并发大流量系统,所以有个记录操作和流量的日志是必要的。好吧,其实就是想练练手,把这个比较菜鸡的项目看起来不那么菜鸡。加的代码不多,直接看代码原创 2020-08-28 00:21:02 · 330 阅读 · 0 评论 -
用C++重构CloudDisk项目
附上项目地址[CloudDisk](https://github.com/82457097/CloudDisk);我已经在里面把需要的安装包都打包好了,一键安装脚本只完成了一半,慎用,不过很快就会完善它。之前是用c来完成功能的,现在想重新用C++重新架构一下,方便后续在上面增加功能。***我还是个刚入门萌新,分享的一些东西并不一定准确,还望大佬们多多指教。***原创 2020-08-27 23:51:31 · 495 阅读 · 0 评论 -
为CloudDisk项目编写一键安装脚本
之前做了分布式网络云盘项目,这个项目的环境搭建还是比较麻烦的,总有小伙伴问我有没有打包好的安装包,其实我之前整理了在Github上,但是下载速度确实让人望而却步。而且自己把之前搭建好的阿里云服务器重置了,所以自己也需要重新搭建一遍,索性写个脚本,一劳永逸。正好也复习一下脚本编写。原创 2020-08-18 23:19:39 · 568 阅读 · 0 评论 -
输出重定向
输出重定向可以将输出流重定向到任意文件或位置。原创 2020-08-18 23:10:05 · 2185 阅读 · 0 评论 -
Android 进程间通信以及AIDL介绍
AIDL全名Android Interface Definition Language,意为安卓接口描述语言,是一种接口定义语言,也是Android系统的一种跨进程通信机制。AIDL做的就是在服务提供进程使用进程之间协商好的接口,双方通过该接口进行通信。其主要实现为Binder类。原创 2020-08-17 17:33:04 · 264 阅读 · 0 评论 -
iptables网络防火墙
iptables的主要功能是实现对网络数据包进出设备及转发的控制。当数据包需要进入设备、从设备中流出或者经该设备转发、路由时,都可以使用iptables进行控制。原创 2020-08-16 21:00:45 · 224 阅读 · 0 评论 -
Shell脚本 ---- 系统信息监控
项目Github地址:https://github.com/82457097/Shell该项目为shell脚本学习项目,整合了一些系统信息收集的操作,有CPU负载、磁盘负载、磁盘使用率、磁盘文件inode使用率、内存使用率、网络连接信息、CPU使用前十进程、内存消耗前十进程、网络流量等。原创 2020-04-19 22:11:06 · 628 阅读 · 0 评论 -
操作系统 ---- 进程管理
进程是计算机中已运行程序的实体。进程和程序之间的关系可以这么理解,程序可以看做是一些指令的集合,而这些指令在执行时就可以成为是一个进程。原创 2020-03-19 14:57:02 · 284 阅读 · 0 评论 -
UNIX基础知识介绍
一、文件和目录1.文件系统UNIX文件系统是目录和文件的一种层次安排,目录的起点称为根 (root),其名字是一个字符/。目录(directory)是一个包含目录项的文件,在逻辑上,可以认为每个目录项都包含一个文件名,同时还包含说明该文件属性的信息。文件属性是:文件类型,文件长度,文件所有者,文件的许可权(例如,其他用户能否能访问该文件),文件最后的修改时间等。2.文件...原创 2020-02-05 20:14:46 · 1138 阅读 · 0 评论 -
本地远程工具连接阿里云服务器配置流程
本地远程工具连接阿里云服务器配置流程原创 2020-01-29 22:57:21 · 1384 阅读 · 0 评论 -
初探C++内存池项目 ---(二)内存池的实现及原理详解
内存池是池化技术中的一种形式。通常我们在编写程序的时候回使用 new delete 这些关键字来向操作系统申请内存,而这样造成的后果就是每次申请内存和释放内存的时候,都需要和操作系统的系统调用打交道,从堆中分配所需的内存。如果这样的操作太过频繁,就会找成大量的内存碎片进而降低内存的分配性能,甚至出现内存分配失败的情况。原创 2020-01-11 13:19:59 · 669 阅读 · 0 评论 -
初探C++内存池项目 ---(一)链式栈的实现和原理详解
C++内存池项目学习总结及经验分享~原创 2020-01-05 17:02:06 · 562 阅读 · 0 评论 -
工欲善其事,必先利其器!(如何在Window上读写Linux项目)
接触过C/C++的都知道,写一些C/C++项目的时候,避免不了跟Linux打交道,网上很多的项目,都是一些基于Linux的服务。当我们想学习这些项目的时候,如果没有一套方便读写代码的工具,那将会让你举步维艰。这篇文章主要和大家分享一下我自己用的一套工具,以及环境的搭建方法~原创 2020-01-01 15:50:56 · 578 阅读 · 0 评论