Skip to content

Commit

Permalink
chore: add README
Browse files Browse the repository at this point in the history
  • Loading branch information
MingcongBai committed Jan 14, 2024
1 parent e6df88e commit d73c258
Show file tree
Hide file tree
Showing 2 changed files with 70 additions and 0 deletions.
47 changes: 47 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
libLoL
======

简体中文自述文档请见[此处](README.zh.md)

libLoL (LoongArch on LoongArch) is a compatibility runtime for applications
designed for LoongArch's old-world ABI. By and large, these are applications
built for Loongson's Loongnix reference Linux distribution and UnionTech's
UOS, consisting mostly commercial applications designed for the mainland
Chinese market, such as:

- Tencent's QQ for Linux
- Kingsoft's WPS for Linux
- Loongson Browser (based on Chromium)

As these applications have not yet been ported to the new-world ABI, this
runtime is meant to provide help users of new-world Linux distributions use
the aforementioned applications.

For a brief introduction on old-world and new-world incompatibility, please
refer to [this essay](https://areweloongyet.com/docs/old-and-new-worlds/) (in
Chinese) from the Loongson Open Source Community's *Are We Loong Yet?* site.

Components
----------

libLoL consists of two components, one in the kernel-space and the other in
the user-space.

- Kernel: The [la_ow_syscall](https://github.com/shankerwangmiao/la_ow_syscall)
modules provides support for old-world system call support in the Linux
Kernel, making it possible to run old-world applications on new-world
(upstream) kernels.
- User-space: A [patched Glibc](https://github.com/AOSC-Dev/glibc-loongarch-oldworld)
provides symbol support for old-world applications - see the Autobuild
building procedure in this repository. Additional runtime may be provided
by the distribution or in binary form from [Loongnix](https://www.loongson.cn/system/loongnix).

Reporting Issues
----------------

Please use the [Issues](https://github.com/AOSC-Dev/liblol/issues) function
for reporting any developer or user issues (feel free to use English or
Chinese).

You are also welcome to report issues at AOSC's various
[chat groups](https://aosc.io/contact/).
23 changes: 23 additions & 0 deletions README.zh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
libLoL
======

libLoL (LoongArch on LoongArch) 是一款用于提供旧世界 ABI 兼容性的运行时。旧世界 ABI 常用于为龙芯官方的 Loongnix 参考发行和统信 UOS 设计的商业软件,如:

- 腾讯 QQ Linux 版
- 金山 WPS for Linux
- 龙芯浏览器(基于 Chromium)

由于这些应用程序尚未移植到新世界 ABI 上,本运行时旨在为新世界发行版用户提供运行上述应用程序的便利。欲知有关新旧世界应用不兼容来由的相关信息,请见龙芯开源社区《咱龙了吗?》站点的[《新世界与旧世界》](https://areweloongyet.com/docs/old-and-new-worlds/)一文。

组件
----

libLoL 由内核空间和用户空间两个组件组成:

- 内核部分:通过 [la_ow_syscall](https://github.com/shankerwangmiao/la_ow_syscall) 模块,给 Linux 内核新增旧世界系统调用支持,进而使得新世界内核得以兼容旧世界运行时和应用程序
- 用户空间部分:给 [Glibc 打补丁](https://github.com/AOSC-Dev/glibc-loongarch-oldworld)以提供旧世界应用程序所需符号的兼容性。其余运行时库由发行版软件包或 [Loongnix](https://www.loongson.cn/system/loongnix) 的二进制软件包提供。

报告问题
--------

请使用本仓库的[工单系统](https://github.com/AOSC-Dev/liblol/issues) 报告有关开发和使用方面的问题。您也可以通过我社的[聊天群组](https://aosc.io/zh-cn/contact/)报告问题。

0 comments on commit d73c258

Please sign in to comment.