什么是 "libgnarl"?
What is "libgnarl"?
什么是libgnarl
?我在不同的地方找到了对此的引用,比如在 gcc 源代码中或在 gprbuild 的详细输出中。 gprbuild 特别报告了是否需要 libgnarl
的决定,所以它显然是一个可选库,但实际的库是什么?我找不到任何关于它的文件。源代码包含一堆包,看起来它们属于标准库,但实际上不是(如 Ada.Execution_Time.Timers
),所以很明显我遗漏了一些东西。
您可以 google 例如"ada gnarl" 并找到一些相当详细的信息。
它是处理任务的 RTS 部分,因此,从广义上讲,如果您的程序不使用任务,则不需要 libgnarl。
历史上,它是作为纽约大学 GNAT 团队和佛罗里达州立大学 PART 团队的联合项目开发的:来自 FSU report in the ACM Digital Library、
The development GNARL is a cooperative effort of the Florida State University POSIX/Ada Real-Time (PART) project with the NYU GNAT development team. The goal of the PART project is to advance the development and standardization of Ada language bindings to the IEEE POSIX standards, a family of application program interfaces for operating system services. A central concern of the PART project has been reconciliation of the Ada tasking model with the proposed standard POSIX thread services (Pthreads).
AdaCore 的嵌入式 RTS(至少是 ARM 的)似乎没有保留这种区别:至少在一个中,libgnarl.a
仅包含 empty.o
!但是,AdaCore 继续采用将学术 RTS 开发纳入其嵌入式 RTS 的方法,请参阅 s-bb.ads
(bb
=> 裸板):
-- Copyright (C) 1999-2002 Universidad Politecnica de Madrid --
-- Copyright (C) 2003-2004 The European Space Agency --
-- Copyright (C) 2003-2018, AdaCore --
什么是libgnarl
?我在不同的地方找到了对此的引用,比如在 gcc 源代码中或在 gprbuild 的详细输出中。 gprbuild 特别报告了是否需要 libgnarl
的决定,所以它显然是一个可选库,但实际的库是什么?我找不到任何关于它的文件。源代码包含一堆包,看起来它们属于标准库,但实际上不是(如 Ada.Execution_Time.Timers
),所以很明显我遗漏了一些东西。
您可以 google 例如"ada gnarl" 并找到一些相当详细的信息。
它是处理任务的 RTS 部分,因此,从广义上讲,如果您的程序不使用任务,则不需要 libgnarl。
历史上,它是作为纽约大学 GNAT 团队和佛罗里达州立大学 PART 团队的联合项目开发的:来自 FSU report in the ACM Digital Library、
The development GNARL is a cooperative effort of the Florida State University POSIX/Ada Real-Time (PART) project with the NYU GNAT development team. The goal of the PART project is to advance the development and standardization of Ada language bindings to the IEEE POSIX standards, a family of application program interfaces for operating system services. A central concern of the PART project has been reconciliation of the Ada tasking model with the proposed standard POSIX thread services (Pthreads).
AdaCore 的嵌入式 RTS(至少是 ARM 的)似乎没有保留这种区别:至少在一个中,libgnarl.a
仅包含 empty.o
!但是,AdaCore 继续采用将学术 RTS 开发纳入其嵌入式 RTS 的方法,请参阅 s-bb.ads
(bb
=> 裸板):
-- Copyright (C) 1999-2002 Universidad Politecnica de Madrid --
-- Copyright (C) 2003-2004 The European Space Agency --
-- Copyright (C) 2003-2018, AdaCore --