Linux操作及开发
基于Linux的程序开发以及Linux的操作问题
非洲蜗牛
这个作者很懒,什么都没留下…
展开
-
Ubuntu18.04安装opencv-python
在使用命令pip install opencv-python安装的是最新版本,我用的python3.6版本,查了下,不支持3.6版本。我就去找了个支持的如opencv-python==4.3.0.38。当然我也是有Python 3.6.9的。但是默认是Python2.7.17。前面提到我的Ubuntu中有Python 3.6.9版本,在。转载 2024-08-14 16:00:28 · 75 阅读 · 0 评论 -
Linux的ldd命令
可以将它们视为可供许多不同程序使用的代码块,从而使这些程序更小、更高效,而不是确保所有使用它们的程序都包含它们,并在代码更改时根据需要进行更新。当然,这个输出不会告诉你有多少程序使用这些共享库,以及如果其中一个比较重要的共享库从你的系统中删除,你会遇到多大的麻烦。共享对象文件通过提供应用程序完成工作所需的信息来简化程序,但这些信息不必是应用程序本身的一部分。共享对象文件(指定为 .so)是程序启动时自动链接到程序中的库,但作为独立文件存在。ldd展示了特定的Linux命令需要运行的共享对象文件。转载 2024-08-13 10:32:30 · 34 阅读 · 0 评论 -
E: Unable to locate package libjasper-dev
【代码】E: Unable to locate package libjasper-dev。转载 2024-08-12 09:27:26 · 73 阅读 · 0 评论 -
conio.h: no such file or directory
【代码】conio.h: no such file or directory。转载 2024-08-10 19:37:03 · 40 阅读 · 0 评论 -
清理Ubuntu中的垃圾和临时文件
清除垃圾和临时文件会从计算机中删除不需要的文件,还可以释放更多硬盘空间。您可以手动清空垃圾和临时文件,也可以将计算机设置为自动执行此操作。临时文件是应用程序在后台自动创建的文件。它们可以通过提供已下载或计算的数据副本来提高性能。转载 2024-08-05 14:25:23 · 37 阅读 · 0 评论 -
Ubuntu 18.04没有Wifi驱动
当然,如果是其他类型的网卡就要另找办法了。转载 2024-07-29 10:01:33 · 77 阅读 · 0 评论 -
如何在 Linux 中同时运行两个或多个终端命令
分享一个Linux使用小技巧:如何在 Linux 中同时运行两个或多个终端命令转载 2024-07-07 15:00:02 · 137 阅读 · 0 评论 -
如何在Linux上制作动态链接库
本文翻译自: How dynamic linking for modular libraries works on Linux放到Ubuntu上试试行不行。1.Linker一个Linker是一种命令,将许多程序片段联系在一起,并且识别针对他们的内存分配。一个linker的功能包括:(1) 集成程序的所有部分(2) 恢复内存,以至于程序能运行在新的内存组织下。(3) 解析符号引用(4) 建立新的内存组织以至于所有的程序能组织在一起。2.创建对象文件首先,创建头文件mymath.h:(关于如翻译 2024-03-17 21:32:28 · 67 阅读 · 0 评论 -
读者写者问题与生产者消费者问题相关题目编码实现(Linux C)
2013年操作系统第2题:编码实现:2015年操作系统第2题:编码实现:2016年操作系统第10题:编码实现:2017年操作系统第10题:编码实现:2018年操作系统第15题:编码实现:原创 2021-12-03 02:33:29 · 1026 阅读 · 0 评论 -
kzalloc()函数
给 kmalloc 的第一个参数是要分配的块的大小. 第 2 个参数, 分配标志, 非常有趣, 因为它以几个方式控制 kmalloc 的行为最一般使用的标志, GFP_KERNEL, 使用 GFP_KENRL 意味着 kmalloc 能够使当前进程在少内存的情况下睡眠来等待一页.GFP_KERNEL 不一直是使用的正确分配标志; 有时 kmalloc 从一个进程的上下文的外部调用. 例如, 这类的调用可能发生在中断处理, tasklet, 和内核定时器中. 在这个情况下, 当前进程不应当被置为睡眠, 并转载 2021-04-02 14:58:29 · 909 阅读 · 0 评论 -
自旋锁简介
何谓自旋锁?它是为实现保护共享资源而提出一种锁机制。其实,自旋锁与互斥锁比较类似,它们都是为了解决对某项资源的互斥使用。无论是互斥锁,还是自旋锁,在任何时刻,最多只能有一个保持者,也就说,在任何时刻最多只能有一个执行单元获得锁。但是两者在调度机制上略有不同。对于互斥锁,如果资源已经被占用,资源申请者只能进入睡眠状态。但是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是否该自旋锁的保持者已经释放了锁,"自旋"一词就是因此而得名1.自选锁的原理跟互斥锁一样,一个执行单元转载 2021-04-02 14:39:06 · 162 阅读 · 0 评论 -
accept函数与socket函数的关系
在服务器端,socket()返回的套接字用于监听(listen)和接受(accept)客户端的连接请求。这个套接字不能用于与客户端之间发送和接收数据。accept()接受一个客户端的连接请求,并返回一个新的套接字。所谓“新的”就是说这个套接字与socket()返回的用于监听和接受客户端的连接请求的套接字不是同一个套接字。与本次接受的客户端的通信是通过在这个新的套接字上发送和接收数据来完成的。再次调用accept()可以接受下一个客户端的连接请求,并再次返回一个新的套接字(与socket()返回的套接字、转载 2021-03-29 09:47:41 · 437 阅读 · 0 评论 -
多线程通信
任务内容及目的:![实现代码:procon.c:#include<stdio.h>#include<pthread.h>#include<stdlib.h>#include<unistd.h>#include<string.h>#include<sys/stat.h>#include<sys/types.h>#include<fcntl.h>#include<sys/select.原创 2021-03-17 10:11:56 · 53 阅读 · 0 评论 -
gdb调试出现“Could not insert hardware watchpoint”
今天在使用gdb调试C程序时出现了:Could not insert hardware watchpoint 3.Could not insert hardware watchpoint 4.Could not insert hardware breakpoints:You may have requested too many hardware breakpoints/watchpoints.对这种情况,参考了博客园的一篇文章,内容如下:活动的 (可用的) 硬件观察点的个数是有限的。如果你原创 2021-02-15 10:25:24 · 2254 阅读 · 0 评论