为云而生,腾讯云服务器操作系统TencentOS内核正式开源
1月9日,腾讯云宣布将开源其服务器操作系统TencentOS内核。相比业内其它版本Linux 内核,腾讯云 TencentOS 内核在资源调度弹性、容器支持、系统性能及安全等层面极具竞争力,特别适合云环境。该系统的开源及应用可帮助客户大幅提升云上资源的利用效率,降低运营成本,同时获得更加安全可靠的业务运行环境。
TencentOS Kernel是继腾讯云物联网操作系统TencentOS tiny之后,TencentOS家族对外开源的第二款产品。TencentOS是腾讯云操作系统系列产品,由腾讯云架构平台部主力研发,覆盖数据中心、桌面系统、边缘设备和物联网终端等应用场景,提供可靠的云平台构建、接入和应用能力,帮助客户转化云的价值。TencentOS服务器操作系统在腾讯公司服役超过10年,覆盖公司全部自研业务,装机量过百万。2019年9月新开源的TencentOS tiny,是腾讯面向物联网领域开发的实时操作系统,具有低功耗、低资源占用、模块化、安全可靠等特点,可有效提升物联网终端产品开发效率,目前在Github上标星已达3.7k。传送门:腾讯自研轻量级物联网操作系统 TencentOS tiny 正式开源腾讯云操作系统团队表示:“将腾讯云服务器操作系统内核TencentOS Kernel开源,不仅可以与全球开发者共享腾讯云在服务器操作系统领域的技术和经验,还能够汲取全球服务器操作系统领域的优秀成果和创新理念,助力整体服务器操作系统生态的繁荣。”
腾讯致力于通过开源和广大开发者共享技术成果。近年来,腾讯开源节奏不断加快,截至2020年1月,已在Github上开源92个项目,并积极参与开源基金会共建,目前已成为Linux、Apache等9大开源基金会的最高级别会员。
专为云设计的资源调度方案,大幅增强系统弹性伸缩能力
传统的Linux系统中,公平性是资源调度算法的核心逻辑。公平的调度能最大程度提供系统通用性。然而,这种公平会造成资源有效利用率的低下,系统的弹性能力大大受限。业务无法按照需求进行资源的分配回收,不仅在于资源的数量,更在于资源的质量,如资源分配速度,抢占能力等。在云平台资源调度的需求背景下,TencentOS Kernel研发了专用的资源调度算法,大幅提升整机的资源弹性。业务可以根据需求指定资源分配的数量和级别,从相同数量不同级别的资源获得的系统服务存在明显差别。
TencentOS Kernel研发的CPU弹性调度算法,在离在线业务混布场景下收益十分显著。在不影响在线业务质量的前提下,整机的CPU利用率最高提升了3倍,部分业务场景下可将整机CPU利用率提升至90%。
资源隔离全面升级,助力业务打造最强容器平台
众所周知,资源的安全隔离始终是容器虚拟化平台的核心问题。社区内核提供的隔离特性远远不能满足业务的需求,一些基本的系统状态信息、CPU信息、磁盘状态信息等均未做隔离,部分场景下甚至直接导致业务不可用。
TencentOS Kernel从业务需求出发,首先对必要的系统状态,比如cpuinfo、stat、loadavg、meminfo、vmstat、diskstats、uptime等进行了隔离增强,保证容器中的应用能获得正确的系统状态信息。
更重要的是,TencentOS Kernel还提供包括NVME IO隔离等特性,彻底解决IO控制组在多队列设备场景资源利用率低,不支持按比例隔离等问题,保证了不同场景下的IO隔离效果。
独有系统安全及性能优化特性,持续降低业务运营成本
业界的内核热补丁技术主要都是针对X86架构进行开发,缺少对ARM64等架构的支持。TencentOS Kernel通过实现类FMENTRY,FTRACE with REGS功能,给KPATCH中增加ARM64支持等实现了针对ARM64架构的内核热补丁方案。TencentOS Kernel提供进程GDB禁止功能,阻止跨进程获取内存,加载动态库等,保障业务进程的数据安全。
性能方面,TencentOS Kernel针对计算、存储和网络子系统均经过独有的优化,例如PAGE CACHE LIMIT功能,限制page cache的使用率,尽量使系统剩余的内存能够满足业务的需求;TencentOS Kernel还新增多个sysctl/proc控制接口,内核启动参数等来优化用户体验。
真诚开源
我们期望通过将 TencentOS-kernel 开源,能够有助于业界其他相关领域的应用,也希望更好的完善产品本身,如果你对这个框架感到兴趣,还请给这个项目一个 Star,欢迎提出你的 issue 和 PR!
TencentOS-kernel 正式开源!
Github 开源地址:https://github.com/Tencent/TencentOS-kernel
请给 TencentOS-kernel 一个 Star !
欢迎提出你的 issue 和 PR!
TencentOS-kernel 国内镜像地址:https://git.code.tencent.com/Tencent_Open_Source/TencentOS-kernel
(登录后才能访问公开项目)
腾讯工蜂源码系统为开源开发者提供完整、最新的腾讯开源项目国内镜像
公众号回复「物联网」,赢取开发板福利
为云而生,腾讯云服务器操作系统TencentOS内核正式开源的更多相关文章
- 云+社区分享——腾讯云OCR文字识别
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云+社区运营团队发布在腾讯云+社区 前言 2018年3月27日腾讯云云+社区联合腾讯云智能图像团队共同在客户群举办了腾讯云OCR文字识 ...
- [腾讯云]简单在腾讯云 CenTOS7.0 安装Nginx,Mysql(MariaDB),Memcache,解析PHP!
1.安装LNMP之前要安装EPEL,以便安装源以外的软件,如Nginx,phpMyAdmin等. yum install epel-release 2.安装Nginx a) yum install n ...
- 阿里云容器Kubernetes监控(九) - Kubernetes事件离线工具kube-eventer正式开源
前言 监控是保障系统稳定性的重要组成部分,在Kubernetes开源生态中,资源类的监控工具与组件百花齐放.除了社区自己孵化的metrics-server,还有从CNCF毕业的Prometheus等等 ...
- AWS、阿里云、Azure、Google Cloud、华为云、腾讯云 各种云服务器价格收费对比(上)
他来了,他来了~ 他带着六家公有云厂商的资源价格走来了~ 不久前,我们上线了一款小工具——[多云成本计算器]1.0版,公众号菜单栏可以直接体验.详细介绍可以戳这里<3秒即得最低价,速石上线「多云 ...
- 国内云存储对比: 阿里云、腾讯云、Ucloud、首都在线
阿里云的数据存储<http://www.aliyun.com/product/rds/> RDS — 关系型数据库服务(Relational Database Service,简称RDS) ...
- 在腾讯云上搭建WordPress博客
笔者一直很羡慕那些搭建了个人博客的大牛,在最近工作之余也尝试着搭建了自己的博客,历时1周,这篇文章就将踩过的坑记录下来,先看下成果,链接在此 1- 购买腾讯云主机 腾讯云官网,我选了79元/月的最便宜 ...
- 使用腾讯云“自定义监控”监控GPU使用率
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:李想 随着人工智能以及比特币的火热,GPU云服务的使用场景是越来越广,在很多场景下我们也需要获取GPU服务器的性能参数来优化程序的执行.目 ...
- 腾讯云 Game-Tech 技术沙龙小游戏专场“空降”长沙
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯游戏云发表于云+社区专栏 小游戏作为今年快速成长的新生态,在开放进入市场之后持续成为行业热点,获得了游戏开发商的高度关注与参与.在 ...
- 腾讯云技术专家卢萌凯手把手教你Demo一个人脸识别程序!
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文来自腾讯云技术沙龙,本次沙龙主题为Serverless架构开发与SCF部署实践 卢萌凯:毕业于东南大学,曾就职于华为,熟悉云行业解决方案 ...
随机推荐
- POJ2185 Milking Grid 题解 KMP算法
题目链接:http://poj.org/problem?id=2185 题目大意:求一个二维的字符串矩阵的最小覆盖子矩阵,即这个最小覆盖子矩阵在二维空间上不断翻倍后能覆盖原始矩阵. 题目分析:next ...
- uva 12296 Pieces and Discs (Geometry)
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- Java Annotation详解(一): 理解和使用Annotation
JDK1.5之后,引入了元数据的概念,也就是Annotation(注释),其实它是代码里的特殊标记,这些标记可以再编译.类加载.运行时被读取,并执行相应的处理. 元数据的作用: 如果要对于元数据的作用 ...
- 程序中打开IE浏览器并访问指定地址
最简单的方法 Process.Start("iexplore.exe"); //直接打开IE浏览器(打开默认首页) Process.Start(" ...
- H3C 帧中继协议栈
- Python--day22--面向对象的交互
Python里面自带的类和对象: 类名的作用: 类里面的与属性相关的对象self的运用: 实例化:就是创建一个对象 调用方法,类名.方法名(对象名) 执行步骤: 简写:alex.walk()等价于Pe ...
- Laravel基本使用、生成Cookie、返回视图、JSON/JSONP、文件下载及重定向
https://yq.aliyun.com/ziliao/23889 1.Response篇 1.1 基本响应 最基本的HTTP响应只需在路由闭包或控制器动作中返回一个简单字符串即可,但是具体业务逻辑 ...
- java.lang.ClassCastException: com.sun.proxy.$Proxy6 cannot be cast to com.etc.service.serviceImpl.BankServiceImpl
错误原因: java.lang.ClassCastException: com.sun.proxy.$Proxy6 cannot be cast to com.etc.service.serviceI ...
- html(四)数据库curd操作与分页查询
数据库操作curd : 1.首先要建立项目处理好自己逻辑包: 其中util工具包中建立两个工具类 jdbc连接和page分页 DBUtil.java: db工具类就是用于连接数据库的jdbc架包,里面 ...
- H3C DHCP简介