重磅!首个跨平台的通用Linux端间互联组件Klink在openKylin开源

随着智能终端设备的普及,多个智能终端设备之间的互联互通应用场景日益丰富,多设备互联互通应用场景需要开发者单独实现通讯协议。因此,为解决跨平台互联互通问题,由openKylin社区理事单位麒麟软件旗下星光麒麟团队成立的Connectivity SIG经过研究探索,打造了一个跨平台的通用Linux端间互联组件—Klink。

一、什么是Klink

Klink是由openKylin社区Connectivity SIG—星光麒麟团队于2021年开始打造的端间互联组件,解耦了软总线模块对多系统平台的应用,实现了对跨平台软总线协议的兼容,包括鸿蒙软总线4.x协议等,使包括openKylin开源操作系统、银河麒麟桌面操作系统等在内的各种主流Linux发行版皆可跨平台互联互通,大幅扩展了生态边界,为我国基础软件健康开放发展做出了贡献。其基本架构如下图所示:

二、Klink优势

openKylin社区理事单位麒麟软件“星光麒麟”万物智联操作系统,以“弹性扩展、智能互联、内生安全、统一框架”的产品特性,针对国家、行业、企业和个人数字化应用需求,开启了面向全场景的新一代操作系统创新之路。其中智能互联特性就是以Klink作为统一通信底座,实现了两大端间互联能力:

  • 其一是分布式硬件资源共享能力。抽象终端设备硬件能力为显示、摄像头、音频等基础能力,基于Klink技术实现设备间硬件资源即时协作、算力共享。

  • 其二是跨终端互联互通能力。支持多设备间设备发现、设备组网、设备认证、设备连接,实现图片、文件等数据在设备间快速传输,内容无缝流转,支持多设备间协作和屏幕共享。

三、Klink使用说明

1.地址

https://gitee.com/openkylin/klink

2.源码链接

git clone https://gitee.com/openkylin/klink.git

3.编译

cd src-path # 进入源码路径# 编译依赖# 查看build-depends文件# 这里需要使用3.0.0以上版本的openssl库# 这里在third_party/openssl/下提供已编译的openssl库,仅支持linux使用,其他平台需要自行编译# 执行sudo bash ./third_party/openssl/openssl_install.sh ./third_party/openssl [amd|arm]# 进行动态库植入# 如果你是其他平台或架构,请自己编译openssl版本,非常抱歉mkdir build & cd buildcmake ..makesudo make install

4.服务部署

# 启动Klink服务sudo /opt/dsoftbus/bin/connectivity_softbus_server > log.file &# 启动设备管理服务sudo /opt/dsoftbus/bin/connectivity_devicemgr_service > log.file &# 启动认证客户端(可以根据SDK接口自己实现)sudo /opt/dsoftbus/bin/connectivity_devicemgr_client

5.Klink SDK链接

find_package(PkgConfig REQUIRED)pkg_check_modules(SOFTBUS_CLIENT REQUIRED softbus_client)pkg_check_modules(DEVICEMGR_SDK REQUIRED devicemgr_sdk)
include_directories(${SOFTBUS_CLIENT_INCLUDE_DIRS})include_directories(${DEVICEMGR_SDK_INCLUDE_DIRS})
target_link_libraries (    ${PROJECT_NAME}    PUBLIC    ${SOFTBUS_CLIENT_LIBRARIES}    ${DEVICEMGR_SDK_LIBRARIES}    )

四、关于Connectivity SIG

Connectivity  SIG由社区理事单位麒麟软件旗下星光麒麟牵头组建,主要负责openKylin社区的互联互通基础能力开发与维护,负责系统互联互通能力规划及开发,负责系统互联互通兼容性、前瞻性探索及研究。欢迎感兴趣的小伙伴加入我们!
  • Connectivity SIG主页:

    https://gitee.com/openkylin/community/tree/master/sig/Connectivity

  • Klink主页:

    https://gitee.com/openkylin/klink

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/29944.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024下《网络工程师》50个高频考点汇总,背就有效!

宝子们!上半年软考已经结束一段时间了,准备考下半年软考中级-网络工程师的小伙伴们可以开始准备了,这里给大家整理了50个高频考点,涵盖全书90%以上重点,先把这个存下!再慢慢看书,边看书边背这个…

数据治理创新路:建设数据集市,强化数据报送一致性新实践

随着信息化和数字化的飞速发展,数据已经成为企业运营和决策的核心要素。然而,数据治理的复杂性和多样性给企业带来了不小的挑战。为了更好地应对这些挑战,许多企业开始探索数据治理的创新路径,其中建设数据集市和强化数据报送一致…

各类存储器类型(RAM、ROM、FLASH、DRAM、SRAM)

1 计算机存储类型构成 在计算机中,各类存储器构成了计算机能高速高效运转程序的基石。 计算机的存储体系中,从速度慢到速度快对应着容量大到小,也就是说,速度越快容量越小;容量越大的,速度越慢。两者互相…

echarts 折线图 实现某两个点之间不要连线

通过插入null或NaN的数据点来实现"断开"的效果 const data [[a, 1], [b, 2], [c, 3], [d, 4], [e, 5]] data.splice(2, 0, NaN) option {xAxis: {type: "category",data: [a, b, c, d, e]},yAxis: {},series: [{data,type: "line"}] }

大语言模型架构---Transformer 模型

文章目录 输入编码多头自注意力机制前馈网络层编码器解码器当前主流的大语言模型都基于 Transformer 模型进行设计的。Transformer 是由多层的多头自注意力(Multi-head Self-attention)模块堆叠而成的神经网络模型。原始的 Transformer 模型由编码器和解码器两个部分构成,而…

中国各区域人口密度可视化图

原文链接https://mp.weixin.qq.com/s?__bizMzUyNzczMTI4Mg&mid2247674303&idx1&sn830304f80a0429406c4a5e38dc7750ec&chksmfa777682cd00ff9434e4660bb52ab2bf19913b6732083de061664401a9ac0fa46581cd9e5e86&token1445576002&langzh_CN&scene21#we…

为什么网络安全缺口很大,而招聘却很少?

2020年我国网络空间安全人才数量缺口超过了140万,就业人数却只有10多万,缺口高达了93%。这里就有人会问了: 1、网络安全行业为什么这么缺人? 2、明明人才那么稀缺,为什么招聘时招安全的人员却没有那么多呢&#xff1…

嵌入式学习记录6.17(qss练习)

一思维导图 二.练习 widget.h #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this->setWindowFlag(Qt::FramelessWindowHint);this->setAttribute(Qt:…

五种HTTP数据传输方式

在前端开发过程中,后端主要提供 http 接口来传输数据,而这种数据传输方式主要有五种: url paramqueryform-urlencodedform-datajson 下面就让我们一起来了解一下在Nest.js中如何使用这五种HTTP数据传输方式: 一,创建项目 使用nest new 创建一个nest的项目 nest new 项目名称 …

Three.js框架的技术难点

Three.js作为一款功能强大的3D JavaScript框架,在为开发者提供丰富的功能和灵活性的同时,也带来了一些技术难点,需要开发者具备一定的知识和经验才能克服。以下是一些Three.js框架的技术难点。北京木奇移动技术有限公司,专业的软件…

【解决】法启动此程序,因为计算机中丢失vcruntime140_1.dll,尝试重新安装此程序以解决此问题【包括安装mysql在内的】

缺少vcruntime140_1.dll解决此问题的第一步找到该文件,有些dll修复工具是收费的,因此下面介绍几种比较简单有效而且免费的解决办法 方法1:重新安装Visual C Redistributable Packages 上面的安装包解决win7,8,10,11的…

STM32HAL库--NVIC和EXTI

1. 外部中断实验 1.1 NVIC和EXTI简介 1.1.1 NVIC简介 NVIC 即嵌套向量中断控制器,全称 Nested vectored interrupt controller。是ARM Cortex-M处理器中用于管理中断的重要组件。负责处理中断请求,分配优先级,并协调中断的触发和响应。 它是…

【日记】被客户一顿输出该怎么办(431 字)

正文 上午有个客户在电话里对着我一顿输出,说他们没有发票财务账务没法处理怎么怎么的。话里话外满满一股 “全是你们的错” 的味道。 当时我很想笑,大姐,你对我输出有啥用啊。票是上级行开的,我们又没有开票权限,对…

让AI代替我写代码???——Codeium安装及使用

序 不知不觉又到了期末大作业的时间了,面对老师布置的超繁琐代码项目,竟一时有些发怵,不知道从何下手才好…… 但是,懒惰如张同学的我怎么能拘泥于老老实实完成这些毫无技术可言的作业呢? 于是乎,我便寻…

【SQL server速成之路】函数

(3)LEFT函数 LEFT ( character_expression , integer_expression ) 功能:返回从字符串character_expression左边开始,由integer_expression指定个数的字符。参数character_expression:为字符型表达式,integ…

c#音乐播放器续(联网下载)

0.前言 书接上文,我们已经实现了一个能够播放本地音乐的音乐播放器,能够播放众多音乐格式,包括.ogg,接下来,我们将为我们的音乐播放器添加一个令人激动的新功能——联网音乐下载和播放!这个功能将使我们能…

Ubuntu 22.04 解决 firefox 中文界面乱码

问题复现 在为Ubuntu 22.04 Server安装完整的GNOME 42.01桌面后,将桌面语言设置为中文时,打开Firefox可能会出现中文乱码的问题。经过网上调查发现,这个问题是由Snap软件包引起的。 解决方案 为了避免在Ubuntu 22.04中文模式下的乱码问题…

数学建模基础:非线性模型

目录 前言 一、非线性方程组 二、非线性规划 三、微分方程模型 四、非线性模型的应用 五、实例示范:传染病传播模型 实例总结 五、总结 前言 非线性模型用于描述变量之间的非线性关系,相比线性模型,其数学形式更为复杂,但…

AI大模型会如何颠覆手机?

导语:大模型在手机端的落地,不仅仅是AI进入人类生活的开始,也是行业发生颠覆,新老巨头进行更替的时刻。 将大模型变小,再塞进手机,会给人们的生活带来怎样的影响? 最近,荣耀成为了…

Java基础学习-流程控制语句-顺序结构-分支结构-循环结构

目录 顺序结构: 分支结构: if语句: 第一种格式: if第二种格式: 案例练习 if第三种格式: switch语句: 格式: switch其他知识点: 循环结构: for循环…