Linux
文章平均质量分 62
醉逍遥_祥
just do IT
展开
-
【Linux学习】之Linux内核空间与用户空间
现代的操作系统大都通过内核空间和用户空间的设计来保护操作系统自身的安全性和稳定性。所以在我们阅读有关操作系统的资料时经常遇到内核空间、用户空间和内核态、用户态等概念,希望本文能够帮助您理解这些基本的概念。以上就是什么是Linux内核空间与用户空间。原创 2024-05-25 15:54:08 · 1077 阅读 · 0 评论 -
Linux内核简述
Linux内核简述原创 2024-04-15 11:14:21 · 256 阅读 · 0 评论 -
深入了解Linux中常见的五种文件类型
在Linux操作系统中,文件是操作系统中最基本的概念之一。在Linux中,每个文件都有一个特定的类型,这决定了系统如何处理和解释该文件。本文将介绍Linux中最常见的五种文件类型,包括普通文件、目录文件、链接文件、设备文件和管道文件,并提供相应的命令和输出示例。同时,我们还将解释ls -l命令输出中标志文件类型的内容。原创 2024-01-23 16:28:28 · 873 阅读 · 0 评论 -
【QT开发】之QOpenGLWindow与QOpenGLWidget的区别
5. QOpenGLWindow提供了更低层次的控制,适合开发需要细致控制渲染和事件的OpenGL应用。QOpenGLWidget提供了更高层的封装,可以方便地嵌入到Qt GUI应用中。所以简单来说,QOpenGLWindow适合开发独立的OpenGL应用或游戏,QOpenGLWidget更适合在GUI应用中嵌入OpenGL内容。1. QOpenGLWindow是独立的顶级窗口,包含自己的 OpenGL上下文。QOpenGLWidget必须放在一个普通的Qt窗口内,它共享父窗口的上下文。原创 2023-10-08 11:18:32 · 575 阅读 · 0 评论 -
数据分发服务(DDS, Data Distribution Service)简介
OMG 数据分发服务 (DDS™) 是一个中间件协议和 API 标准,用于来自 Object Management Group® (OMG®) 的以数据为中心的连接。它将系统的组件集成在一起,提供业务和关键任务物联网 (IoT) 应用程序所需的低延迟数据连接、极高的可靠性和可扩展架构。在分布式系统中,中间件是位于操作系统和应用程序之间的软件层。它使系统的各个组件能够更轻松地通信和共享数据。它让软件开发人员专注于其应用程序的特定用途,而不是在应用程序和系统之间传递信息的机制,从而简化了分布式系统的开发。原创 2023-09-27 14:07:06 · 1370 阅读 · 0 评论 -
零拷贝技术详解
当涉及到网络编程和IO操作时,数据拷贝是一个常见的性能瓶颈。传统的数据拷贝过程中,数据需要从内核缓冲区复制到用户空间缓冲区,然后再从用户空间缓冲区复制到内核缓冲区,这个过程会耗费大量的CPU时间和内存带宽,降低系统的性能和吞吐量。为了解决这个问题,零拷贝技术应运而生。零拷贝技术是指在数据传输过程中,避免将数据从一块内存拷贝到另一块内存,从而减少了CPU的开销和内存带宽的消耗,提高了系统的性能。在Java后端开发中,使用零拷贝技术可以有效提升系统的性能和吞吐量。本文将介绍零拷贝技术的概念、实现原理以及原创 2023-08-24 19:48:47 · 348 阅读 · 0 评论 -
如何在 Ubuntu 20.04 桌面上启用/禁用 wayland
如何在 Ubuntu 20.04 桌面上启用/禁用 wayland原创 2023-07-19 13:55:52 · 9518 阅读 · 2 评论 -
【Python笔记】之-bash: python: command not found
在服务器环境,使用python命令时提示:-bash: python: command not found。根据python版本建立软链接,命令如下:(如python3.10,根据版本信息换成自己的)只需要在命令ln -sf 加一个 f 即可。python正常安装,没有配置软链接。可能需要sudo权限。原创 2023-06-26 14:50:34 · 9064 阅读 · 0 评论 -
【Python踩坑笔记】安装虚拟环境:/usr/bin/python: No module named virtualenvwrapper
错误原因:Ubuntu下安装了多个版本的python(python2.7与3.x同时存在),在安装时使用的是sudo pip install virtualenvwrapper。运行的时候默认使用的是python2.7解释器,但在python2.7中不存在对应的模块。默认选择Python3解释器,就不会报错了!原创 2023-06-06 00:06:23 · 453 阅读 · 0 评论 -
【PCL build issue】WARNING ** io features related to pcap png will be disabled
WARNING ** io features related to pcap png will be disabled原创 2023-05-15 19:41:02 · 2050 阅读 · 2 评论 -
【GStreamer学习】之GStreamer基础教程
GStreamer基础教程原创 2023-04-12 10:12:47 · 1314 阅读 · 0 评论 -
【V4L2学习】之V4L2操作流程
v4l2是Video4linux2的简称,是linux中关于视频设备的内核驱动,在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头设备文件位置是/dev/video0。V4L2在设计时,是要支持很多广泛的设备的,它们之中只有一部分在本质上是真正的视频设备。原创 2023-04-11 22:33:32 · 732 阅读 · 0 评论 -
【Ubuntu】之新装Ubuntu18.04-离线安装gcc、make、网卡驱动等
基本环境:Ubuntu主机:18.04.5 LTS(全新系统,未配置网卡驱动)Ubuntu启动U盘:需要其中的镜像文件无线网卡:Intel I219-V离线安装基本依赖由于ubuntu系统刚刚安装完毕,网卡驱动等还未配置,无法实现网络在线安装依赖,所以需要离线安装相关的依赖,然后再配置相关的网卡驱动!网上的教程很多都是需要自己单独下载文件,然后按照顺序进行安装,这样比较麻烦,所以本文直接利用自己当初的启动U盘,找到需要的依赖直接进行安装即可!所有的基本依赖文件都在...原创 2021-12-17 15:16:32 · 12881 阅读 · 3 评论 -
Linux C/C++服务器后台开发面试题总结(网络编程篇)
Linux C/C++服务器后台开发面试题总结(网络编程篇)TCP头大小,包含字段?三次握手,四次断开描述过程,都有些什么状态。状态变迁图。TCP/IP收发缓冲区(2次)头部大小是20字节,包含数据如下:三次握手:四次释放:状态变迁图:收发缓冲区:使用udp和tcp进程网络传输,为什么tcp能保证包是发送顺序,而 udp无法保证?因为TCP发送的数据包是按序号发送,有确...原创 2020-03-26 11:14:42 · 498 阅读 · 0 评论 -
【Linux学习】之Linux 下的信号处理
前 言这一章我们讨论一下Linux 下的信号处理函数.一、信号的产生二、信号的处理三、其它信号函数四、一个实例一、信号的产生Linux 下的信号可以类比于DOS 下的INT 或者是Windows 下的事件.在有一个信号发生时候相信的信号就会发送给相应的进程.在Linux 下的信号有以下几个. 我们使用 kill -l命令可以得到以下的输出结果:1) SIGHUP 2) SI...原创 2020-03-04 11:34:05 · 147 阅读 · 0 评论 -
【Linux学习】之线程操作
前 言 介绍在Linux 下线程的创建和基本的使用. Linux 下的线程是一个非常复杂的问题,由于我对线程的学习不是很好,我在这里只是简单的介绍线程的创建和基本的使用,关于线程的高级使用(如线程的属性,线程的互斥,线程的同步等等问题)可以参考我后面给出的资料. 现在关于线程的资料在网络上可以找到许多英文资料,后面我罗列了许多链接,对线程的高级属性感兴趣的话可以参考一下. 等到我...原创 2020-03-04 11:11:28 · 132 阅读 · 0 评论 -
【Linux学习】之进程介绍
前 言这篇文章是用来介绍在Linux 下和进程相关的各个概念.我们将学习:1.进程的概念2.进程的身份3.进程的创建4.守护进程的创建1.进程的概念Linux 操作系统是面向多用户的.在同一时间可以有许多用户向操作系统发出各种命令.那么操作系统是怎么实现多用户的环境呢? 在现代的操作系统里面,都有程序和进程的概念.那么什么是程序,什么是进程呢? 通俗的讲程序是一个包含可以...原创 2020-03-03 14:32:23 · 241 阅读 · 0 评论 -
【Linux学习】之Linux编程基础知识
Linux下程序开发1.源程序的编译2.Makefile 的编写3.程序库的链接4.程序的调试5.头文件和系统求助1.源程序的编译 在Linux 下面,如果要编译一个C 语言源程序,我们要使用GNU 的gcc 编译器。下面我们以一个实例来说明如何使用gcc 编译器。假设我们有下面一个非常简单的源程序(hello.c):int main(int arg...原创 2020-03-03 14:05:53 · 261 阅读 · 0 评论 -
select、poll、epoll之间的区别
(1)select==>时间复杂度O(n)它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。(2)poll==>时间复杂度O(n)poll本质上和select没有区别,它将用...原创 2019-04-20 10:57:38 · 169 阅读 · 0 评论 -
Linux文本检索命令grep
grep是在linux系统中基于行文本非常实用检索工具,通过该命令可以将匹配到的结果信息输出到终端控制台。语法格式:grep [-ivnc] '需要匹配的内容' 文件名常用参数说明:-i 检索的时候不区分大小写-c 检索到的匹配行数-n 检索到的匹配行显式具体的行号-v 逆向匹配也就是不包含匹配项...原创 2019-04-28 10:58:57 · 299 阅读 · 0 评论 -
Linux文件压缩命令
1、gzip/gunzipgzip/gunzip:主要是进行单个文件的压缩和解压缩的命令。示例:gzip hello.txt #执行压缩hello.txtls hello.txt.gz #查看文件信息gunzip hello.txt.gz #解压文件命令2、tar 命令tar可以用来打包文件,还可以把特定目录下的...原创 2019-04-28 10:55:33 · 25368 阅读 · 0 评论 -
Ubuntu 快速入门教程
Ubuntu 是什么?Ubuntu 是一个以桌面应用为主的开源 GNU/Linux 操作系统,Ubuntu 是基于 Debian GNU/Linux,支持 x86、amd64(即x64)和 ppc 架构,由全球化的专业开发团队(Canonical Ltd)打造的一种以桌面应用为主的Linux 发行版。Ubuntu 主要使用自由、开源的软件,广泛应用于个人电脑,智能手机,服务器,云计算,以及智能...原创 2018-11-20 08:59:50 · 4165 阅读 · 1 评论