草庐IT

linux-device-driver

全部标签

如何在 IDEA 中设置远程连接服务器开发环境并实现固定地址远程 Linux 环境

文章目录1.检查LinuxSSH服务2.本地连接测试3.Linux安装Cpolar4.创建远程连接公网地址5.公网远程连接测试6.固定连接公网地址7.固定地址连接测试本文主要介绍如何在IDEA中设置远程连接服务器开发环境,并结合Cpolar内网穿透工具实现无公网远程连接,然后实现远程Linux环境进行开发。IDEA的远程开发功能,可以将本地的编译、构建、调试、运行等工作都放在远程服务器上执行,而本地仅运行客户端软件进行常规的开发操作即可,旧版本IDEA目前不支持该功能,本例使用的是IDEA2023.2.5版本。Cpolar内网穿透是一种安全的内网穿透云服务,可以将内网下的本地服务器通过安全隧道

android - Expo 推送通知 - 错误 : Couldn’t get GCM token for device

我尝试在mt应用程序上实现ExpoNotification,非常有线,在我上一个expo应用程序中它运行良好但现在不行了,可能因为版本更新这是我尝试使用expo文档中的代码时显示的Error:Couldn'tgetGCMtokenfordevice这是pacage.json:我的package.json:{"name":"blabla","version":"0.1.0","private":true,"devDependencies":{"babel-plugin-transform-decorators-legacy":"^1.3.5","jest-expo":"~27.0.0",

【Linux | C++ 】生产者消费者模型(Linux系统下C++ 代码模拟实现)

阅读导航引言一、生产者消费者问题🍁将生产者消费者模型比喻为超市的顾客和供货商二、C++queue模拟阻塞队列的生产消费模型(伪代码)三、RAII风格的加锁方式1.简介2.示例四、基于Linux操作系统使用C++代码,采用RAII风格的加锁方式模拟“生产者消费者模型”⭕Makefile文件⭕.h头文件✅lockGuard.h✅BlockQueue.h✅Task.h⭕.cpp文件✅ConProd.cpp温馨提示引言多线程编程中的同步问题是一个普遍存在的难点,为了解决这些问题,开发者们设计出了各种同步机制,如条件变量、信号量、互斥锁等。生产者消费者模型是一个经典案例,它涉及到两类线程:生产者和消费者

【Linux系统编程:线程】 线程控制 -- 创建、终止、等待、分离 | 线程互斥与同步 | 互斥量与条件变量 | 生产者消费者模型 | 线程池 | STL/智能指针与线程安全 | 读者写者模型

写在前面本文重点:了解线程概念,理解线程与进程区别与联系。学会线程控制,线程创建,线程终止,线程等待。了解线程分离与线程安全。学会线程同步。学会使用互斥量,条件变量,posix信号量,以及读写锁。理解基于读写锁的读者写者问题。一、线程概念💦什么是线程基本上很多操作系统的书上对线程的解释是:线程是进程的一个执行分支,是在进程内部运行的一个执行流。而到具体一款操作系统,我们将从是什么、为什么、怎么办三个角度来解释线程。我们先来谈线程是什么的问题?对于上图,我们当然很熟悉,现在就可以明确了,这里是一张用户级页表,内核页表就不画了,我们都知道可执行程序在磁盘中无非就是代码或数据,更准确点表述,代码也是

如何在Linux中强制关闭卡住的PyCharm

在使用PyCharm进行Python开发时,有时可能会遇到卡顿或无响应的情况。当PyCharm卡住时,我们需要强制关闭它以恢复正常操作。今天,我们将介绍在Linux系统中如何强制关闭PyCharm的几种方法。1.使用键盘快捷键在PyCharm所在的窗口中,可以尝试使用"Ctrl+C"组合键来终止PyCharm进程。这将发送一个中断信号给PyCharm,使其关闭。2.使用命令行杀死进程打开终端,并输入以下命令来查找PyCharm的进程ID(PID):ps-ef|greppycharm这将显示与PyCharm相关的进程列表,包括它们的PID。找到要强制关闭的PyCharm进程,并记下其PID。使用

Linux——kali系统简介及命令

1.简介kali是Linux的一种,内部包含众多的网络安全相关的软件。用户分为两类:1.管理员用户也是root,管理员用户具有全部权限,可以进行任意的操作。2.普通用户,新建的用户都是普通用户,权限非常低。2.Linux的目录结构Linux是一个单根系统,根的表示方式是/ Linux里的文件是严格区分大小写。3.基础命令1.pwd作用:显示当前所在的工作目录。2.clear作用:清空屏幕快捷键:ctrl+l3.ifconfig作用:查看当前IP地址信息命令执行结果中,每一部分都是一个网卡,此处有两个网卡eth0和lo4.ipaddr作用:查看IP地址5.ping作用:测试网络是否可以通信,或者

【Linux】进程间通信之共享内存/消息队列/信号量

文章目录一、共享内存的概念及原理二、共享内存相关接口说明1.shmget函数2.ftok函数3.shmat函数4.shmdt函数5.shmctl函数三、用共享内存实现server&client通信1.shm_server.cc2.shm_client.cc3.comm.hpp4.查看ipc资源及其特征5.共享内存的优缺点6.共享内存的数据结构四、systemV消息队列五、systemV信号量六、IPC资源的组织方式一、共享内存的概念及原理共享内存是通过让不同的进程看到同一个内存块的方式。我们知道,每一个进程都会有对应的PCB-task_struct,独立的进程地址空间,然后通过页表将地址映射到

【Linux系统编程】进度条的编写

目录一,进度条的必备知识1,缓冲区的粗略介绍2,回车与换行二,进度条的初步制作1,进度条的初步矿建2,进度条的版本一3,进度条的版本二一,进度条的必备知识1,缓冲区的粗略介绍     缓冲区是内存的一部分空间,用于临时存储输入和输出的数据。它可分为输入缓冲区和输出缓冲区。每当我们输入数据时都是往输入缓冲区中存放数据,当刷新缓冲区时,数据将会从缓冲区中拿出输入到某个变量中。每当我们输出数据时,系统将会把数据输出到输出缓冲区中,当刷新输出缓冲区时,数据将会从输出缓冲区输出到指定地方。    其中,缓冲区的刷新时机是不同的。行缓冲会在遇到换行符时刷新,全缓冲会在缓冲区写满时刷新,而无缓冲则没有缓冲区

Linux之进程(二)

目录一、进程优先级1、基本概念2、Linux中的优先级1、PRI和NI2、通过top命令更改进程NI值3、四个特性二、进程切换一、进程优先级1、基本概念什么是优先级?优先级:进程获取cpu资源分配的先后顺序,就是指进程的优先权。优先权高的进程有优先执行权利。为什么有优先级?优先级存在的主要原因就是CPU资源是有限的,一个CPU一次只能运行一个进程。如果进程太多,需要通过优先级来竞争资源。所以需要存在进程的优先级,来确定进程获取CPU资源的先后顺序。2、Linux中的优先级使用ps-l命令可以看到下面的内容。其中PID和PPID我们已经知道是什么了,下面我们来了解一下其它是什么。UID:代表执行

Linux系统设置每隔1小时运行指定命令

在Linux系统中,通常情况下使用crontab命令来设置定时任务,本文以每隔1个小时运行一条指令为例子,和大家一起讨论crontab的用法。具体的操作步骤:打开终端。输入命令 crontab-e 进入编辑模式。在编辑模式下,输入以下命令:0*/1***/path/command其中,0 表示每小时的0分执行任务,*/3 表示每隔3小时执行一次,/path/command 表示要执行的命令的完整路径。4.编辑完成后,按下 Ctrl+X,输入 Y 保存并退出。这样,Linux系统就会每隔1个小时运行指定的命令了。需要注意的是需要确保命令路径是正确的,并且该命令可以在终端中直接运行。另外,可以使用