首页 文章 精选 留言 我的

精选列表

搜索[华为鸿蒙],共9919篇文章
优秀的个人博客,低调大师

鸿蒙内核标准库与 Linux 标准库的差异

本文描述了 OpenHarmony 内核承载的标准库与 Linux 标准库之间存在的关键差异。 进程 OpenHarmony 用户态进程优先级只支持静态优先级且用户态可配置的优先级范围为10(最高优先级)-31(最低优先级)。 OpenHarmony 用户态线程优先级只支持静态优先级且用户态可配置的优先级范围为0(最高优先级)-31(最低优先级)。 OpenHarmony 调度策略支持 SCHED_RR 和 SCHED_FIFO。 sched_yield() 为进程主动放弃 CPU;thrd_yield() 为线程主动放弃 CPU。 内存 与 Linux mmap 的差异 mmap接口原型为:void *mmap (void *addr, size_t length, int prot, int flags, int fd, off_t offset)。 其中,参数fd的生命周期实现与Linux glibc存在差异。具体体现在,glibc在成功调用mmap进行映射后,可以立即释放fd句柄。在OpenHarmony内核中,不允许用户在映射成功后立即关闭相关fd,只允许在取消映射munmap后再进行fd的close操作。如果用户不进行fd的close操作,操作系统将在进程退出时对该fd进行回收。 代码举例 Linux目前支持的情况如下: int main(int argc, char *argv[]) { int fd; void *addr = NULL; ... fd = open(argv[1], O_RDONLY); if (fd == -1){ perror("open"); exit(EXIT_FAILURE); } addr = mmap(NULL, length, PROT_READ, MAP_PRIVATE, fd, offset); if (addr == MAP_FAILED) { perror("mmap"); exit(EXIT_FAILURE); } close(fd); /* close immediately, OpenHarmony do not support this way */ ... exit(EXIT_SUCCESS); } OpenHarmony支持的情况如下: int main(int argc, char *argv[]) { int fd; void *addr = NULL; ... fd = open(argv[1], O_RDONLY); if (fd == -1){ perror("open"); exit(EXIT_FAILURE); } addr = mmap(NULL, length, PROT_READ, MAP_PRIVATE, fd, offset); if (addr == MAP_FAILED) { perror("mmap"); exit(EXIT_FAILURE); } ... munmap(addr, length); close(fd); /* close after munmap */ exit(EXIT_SUCCESS); } 文件系统 **系统目录:**用户无法对其进行修改,或是设备挂载。包含/dev,/proc,/app,/bin,/data,/etc,/lib,/system,/usr目录。 用户目录:用户可以在该目录下进行文件创建、读写,但不能进行设备挂载。用户目录指/storage目录。 除系统目录与用户目录之外,用户可以自行创建文件夹进行设备的挂载。但是要注意,已挂载的文件夹及其子文件夹不允许重复或者嵌套挂载,非空文件夹不允许挂载。 信号 信号默认行为不支持STOP、CONTINUE、COREDUMP功能。 无法通过信号唤醒正在睡眠状态(举例:进程调用sleep函数进入睡眠)的进程。原因:信号机制无唤醒功能,当且仅当进程被CPU调度运行时才能处理信号内容。 进程退出后会发送SIGCHLD给父进程,发送动作无法取消。 信号仅支持1-30号信号,接收方收到多次同一信号,仅执行一次回调函数。 Time OpenHarmony当前时间精度以tick计算,系统默认10ms/tick。sleep、timeout系列函数时间误差<=20ms。 更多详情请查看:点击查看

优秀的个人博客,低调大师

大IPD之——学习华为组织绩效指标设计(九)

企业经营管理的重点是抓组织绩效,不是个人绩效。很多企业花了很多精力推广绩效管理,每个员工头上都有指标,指标的打分精确到小数点后两位,看似科学严谨,其实全部是管理成本,没有效益。很多指标都是数字游戏,人力资源也无法判断合理性,企业其实没有必要将巨大的人力物力投入在这些“本末倒置”的事情上,否则可能会导致出现“人人完成指标,组织目标没有完成”的尴尬局面。

优秀的个人博客,低调大师

华为开源 openInula 前端框架,兼容 React API 和生态

lnula(发音为:[ˈɪnjʊlə])。openInula 是一款用于构建用户界面的 JavaScript 库,提供响应式 API 帮助开发者简单高效构建 web 页面,比传统虚拟 DOM 方式渲染效率提升30%以上!同时 InulaJS 提供与 React 保持一致的 API,并且提供5大常用功能丰富的核心组件:状态管理器、路由、国际化、请求组件、应用脚手架,以便开发者高效、高质量的构筑基于 InulaJS 的前端产品。 技术架构 核心能力 响应式API openInula 通过最小化重新渲染的范围,从而进行高效的UI渲染。这种方式避免了虚拟DOM的开销,使得 openInula 在性能方面表现出色。 openInula 通过比较变化前后的 JavaScript 对象以细粒度的依赖追踪机制来实现响应式更新,无需用户过度关注性能优化。 简洁API: openInula 提供了两组简洁直观的API--响应式 API 和与 React 一致的传统API,使得开发者可以轻松地构建复杂的交互式界面。 openInula 简洁的API极大降低了开发者的学习成本,开发者使用响应式API可以快速构建高效的前端界面。 兼容 ReactAPI 与 React 保持一致 API 的特性、可以无缝支持 React 生态。 使用传统 API 可以无缝将 React 项目切换至 openInula,React 应用可零修改切换至 openInula。 openInula 配套组件 状态管理器/inula-X inula-X 是 openInula 默认提供的状态管理器,无需额外引入三方库,就可以简单实现跨组件/页面共享状态。 inula-X 与 Redux 比可创建多个 Store,不需要在 Reducer 中返回 state 并且简化了 Action 和 Reducer 的创建步骤,原生支持异步能力,组件能做到精准重渲染。inula-X均可使用函数组件、class 组件,能提供 redux 的适配接口及支持响应式的特点。 路由/inula-router inula-router 是 openInula 生态组建的一部分,为 openInula 提供前端路由的能力,是构建大型应用必要组件。 inula-router 涵盖 react-router、history、connect-react-router 的功能。 请求/inula-request inula-request 是 openInula 生态组件,涵盖常见的网络请求方式,并提供动态轮询钩子函数给用户更便捷的定制化请求体验。 国际化/inula-intl lnula-intl 是基于 openInula 生态组件,其主要提供了国际化功能,涵盖了基本的国际化组件和钩子函数,便于用户在构建国际化能力时方便操作。 调试工具/inula-dev-tools inula-dev-tools 是一个为 openInula 开发者提供的强大工具集,能够方便地查看和编辑组件树、管理应用状态以及进行性能分析,极大提高了开发效率和诊断问题的便捷性。 脚手架/inula-cli lnula-cli 是一套针对 openInula 的编译期插件,它支持代码优化、JSX 语法转换以及代码分割,有助于提高应用的性能、可读性和可维护性。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册