mirror of
https://github.com/rcore-os/rCore.git
synced 2024-11-23 00:16:17 +04:00
157 lines
4.8 KiB
TeX
157 lines
4.8 KiB
TeX
\documentclass{beamer}
|
||
|
||
\usepackage{amsmath}
|
||
\usefonttheme{serif}
|
||
|
||
\usepackage{ctex}
|
||
\usepackage{amsmath}
|
||
\usepackage{amsfonts}
|
||
\usepackage{minted}
|
||
\usepackage{graphics}
|
||
\usepackage{booktabs}
|
||
\usepackage{xeCJK}
|
||
\setCJKmainfont[ItalicFont={楷体}, BoldFont={黑体}]{宋体}
|
||
|
||
\usepackage{booktabs}
|
||
|
||
\newcommand{\E}{\text{E}}
|
||
\newcommand{\var}{\text{Var}}
|
||
\newcommand{\cov}{\text{Cov}}
|
||
\renewcommand{\d}{\text{d}}
|
||
|
||
\setbeamertemplate{footline}[frame number]
|
||
|
||
\title{rCore 的基本开发环境的搭建}
|
||
|
||
\author{罗崚骁 \quad 宋香君}
|
||
|
||
\begin{document}
|
||
\begin{frame}
|
||
\titlepage
|
||
\end{frame}
|
||
|
||
\begin{frame}{课程设计目标}
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item \textbf{C/C++ 开发}:基于 musl libc 的 gcc 工具链
|
||
\item \textbf{工程构建}:GNU make, CMake
|
||
\item \textbf{Rust 开发}:Rust 工具链
|
||
\item \textbf{版本控制系统}:git
|
||
\item \textbf{编辑器}:vi, vim
|
||
\item \textbf{软件包管理器}:cargo
|
||
\end{itemize}
|
||
|
||
\end{frame}
|
||
|
||
\begin{frame}{课程设计背景}
|
||
rCore 已经具备了运行一些软件的能力。但是,rCore 的软件开发能力还稍显不足。
|
||
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item 编译器支持不足,目前仅支持 musl-gcc
|
||
\item C/C++,Rust 标准库实现支持不详,缺少测试,目前仅支持 musl-libc
|
||
\item 没有版本控制系统
|
||
\item 缺少项目构建工具
|
||
\item 编辑器只能说勉勉强强(vi)
|
||
\item 没有软件包管理器,甚至不能从源码安装软件
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{已有工作}
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item rCore 已经实现了相当数量的系统调用,能够支持 \href{https://github.com/rcore-os/rcore-user}{rcore-user} 中的软件,
|
||
\item 考虑到编译器是我们的课程设计中重要的一环,尤其可以参考此前 rCore 对 musl-gcc 的支持历程
|
||
\item 可以设法获取的各种满足我们需求的开源软件,这一点决定了我们的工作思路是对 rCore 针对软件进行完善,而非针对 rCore 开发软件
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{工作计划及目前进展}
|
||
工作计划按如下顺序开展:
|
||
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item 完善对 gcc 的支持,测试 C/C++ 标准库实现
|
||
\item 支持 make,使 rCore 具备从源码安装软件的能力
|
||
\begin{itemize}
|
||
\item 还可考虑支持 CMake
|
||
\end{itemize}
|
||
\item 支持 Git
|
||
\item 支持 Rust 工具链,主要包括:
|
||
\begin{itemize}
|
||
\item rustc
|
||
\item cargo
|
||
\item 测试 rust 标准库实现
|
||
\end{itemize}
|
||
\item 支持更多的编辑器
|
||
\begin{itemize}
|
||
\item nano
|
||
\item vim
|
||
\end{itemize}
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{软件支持过程}
|
||
{安装}
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item 寻找官方发布的预编译版本
|
||
\item 外部源码构建
|
||
\item rCore 内部源码构建(目前估计难以达到较好效果)
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{软件支持过程}
|
||
{测试}
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item 对于C/C++,Rust 标准库的测试,似乎没有找到官方公开的测例,运行大规模工程
|
||
\item 对于各种软件,决定选取其重要功能进行测试
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{10pt}
|
||
\item make 是否能顺利构建项目、是否支持增量构建等
|
||
\item Git 的 add,commit,log,status,branch 等功能
|
||
\item 当然如果能找到测例的话就最好了
|
||
\end{itemize}
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{软件支持过程}
|
||
{系统调用}
|
||
\begin{itemize}
|
||
\item 利用 rCore 的 log 信息
|
||
\end{itemize}
|
||
\begin{figure}[H]
|
||
\centering
|
||
\includegraphics[width=\linewidth]{assets/syscall0.png}
|
||
% \caption{}
|
||
% \label{}
|
||
\end{figure}
|
||
\end{frame}
|
||
|
||
\begin{frame}{小组分工}
|
||
\begin{itemize}
|
||
\item 罗崚骁
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{8pt}
|
||
\item 实现和完善系统调用
|
||
\item 完成对 Git 支持
|
||
\item 完成对 cargo 离线版的支持
|
||
\item 测试 C++ 和 Rust 项目
|
||
\end{itemize}
|
||
\item 宋香君
|
||
\begin{itemize}
|
||
\setlength{\itemsep}{8pt}
|
||
\item 实现和完善系统调用
|
||
\item 完成对 make,CMake 的支持
|
||
\item 测试 C 项目
|
||
\end{itemize}
|
||
\end{itemize}
|
||
\end{frame}
|
||
|
||
\begin{frame}{结束}
|
||
谢谢观看
|
||
\end{frame}
|
||
|
||
\end{document}
|