Ada 编程/库/系统
外观
System 包是一个标准库包,每个 Ada 实现都提供它。它包含实现和系统配置相关的定义。System 包包含一组标准的语言定义的(但实现相关的)类型和命名数字。
- 名称
- 地址
- 优先级(自 Ada 95 起,也称为 Interrupt_Priority 和 Any_Priority)
- Bit_Order(自 Ada 95 起)
以下命名数字可以通过编译指示设置。这些编译指示只能在编译开始时使用
- System_Name
- Storage_Unit
- Memory_Size
以下命名数字由实现设置
- Null_Address(自 Ada 95 起)
- Default_Priority(自 Ada 95 起)
- Default_Bit_Order(自 Ada 95 起)
- MIN_INT - 所有预定义整型类型(负数)的最小值。
- MAX_INT - 所有预定义整型类型(正数)的最大值。
- MAX_BINARY_MODULUS - 允许作为模类型模数的最大幂。
- MAX_NONBINARY_MODULUS - 允许作为模类型模数的最大值。
- MAX_BASE_DIGITS - 浮点声明中允许的最大有效十进制位数。
- MAX_DIGITS - 在没有范围说明符的情况下浮点声明中允许的最大有效十进制位数。该值最大不超过前一个值。
- MAX_MANTISSA - 定点值中允许的最大尾数二进制位数。
- FINE_DELTA - 定点值中允许的最小增量(给定 -1.0 到 1.0 的范围约束)。
- TICK - 时钟周期(以秒为单位)。
六个无标记的 System 包来自 ISO/IEC 8652:1995(E) 标准。
- (Ada 2012)
- 此包自 Ada 2012 起可用。
- (Ada 2022)
- 此包自 Ada 2022 起可用。
- System
- System.Address_To_Access_Conversions
- System.Atomic_Operations (Ada 2022)
- System.Atomic_Operations.Exchange (Ada 2022)
- System.Atomic_Operations.Integer_Arithmetic (Ada 2022)
- System.Atomic_Operations.Modular_Arithmetic (Ada 2022)
- System.Atomic_Operations.Test_And_Set (Ada 2022)
- System.Machine_Code
- System.Multiprocessors (Ada 2012)
- System.Multiprocessors.Dispatching_Domains (Ada 2012)
- System.RPC
- System.Storage_Elements
- System.Storage_Pools
- System.Storage_Pools.Subpools (Ada 2012)
- System.Address_Image
- System.Assertions
- System.Memory
- System.Partition_Interface
- System.Task_Info
- System.WCh_Cnv
- System.WCh_Con
以下 200 个左右的包构成了 GNAT 运行时环境。这里提到它们是为了供高级用户参考。普通 GNAT 用户应该忽略它们,因为它们是运行时系统的内部单元。
- System.Address_Operations
- System.Arith_64
- System.AST_Handling
- System.Aux_DEC
- System.Bit_Ops
- System.Boolean_Array_Operations
- System.Compare_Array_Signed_8
- System.Compare_Array_Unsigned_8
- System.Compare_Array_Signed_16
- System.Compare_Array_Signed_32
- System.Compare_Array_Signed_64
- System.Case_Util
- System.Compare_Array_Unsigned_16
- System.Compare_Array_Unsigned_32
- System.Compare_Array_Unsigned_64
- System.Checked_Pools
- System.CRC32
- System.CRTL
- System.Direct_IO
- System.Error_Reporting
- System.Exceptions
- System.Exception_Table
- System.Exn_Int
- System.Exn_LLF
- System.Exn_LLI
- System.Exp_Int
- System.Exp_LLI
- System.Exp_LLU
- System.Exp_Mod
- System.Exp_Uns
- System.Fat_Flt
- System.Fat_Gen
- System.Fat_LFlt
- System.Fat_LLF
- System.Fat_SFlt
- System.File_Control_Block
- System.File_IO
- System.Finalization_Implementation
- System.Finalization_Root
- System.Fore
- System.Generic_Vector_Operations
- System.Global_Locks
- System.HIE_Back_End
- System.HTable
- System.Img_BIU
- System.Img_Bool
- System.Img_Char
- System.Img_Dec
- System.Img_Enum
- System.Img_Int
- System.Img_LLB
- System.Img_LLD
- System.Img_LLI
- System.Img_LLU
- System.Img_LLW
- System.Img_Real
- System.Img_Uns
- System.Img_WChar
- System.Img_WIU
- System.Interrupt_Management.Operations
- System.Interrupts
- System.Interrupt_Management
- System.IO
- System.Mantissa
- System.Machine_State_Operations
- System.Memory_Copy
- System.OS_Interface
- System.OS_Primitives
- System.Pack_03
- System.Pack_05
- System.Pack_06
- System.Pack_07
- System.Pack_09
- System.Pack_10
- System.Pack_11
- System.Pack_12
- System.Pack_13
- System.Pack_14
- System.Pack_15
- System.Pack_17
- System.Pack_18
- System.Pack_19
- System.Pack_20
- System.Pack_21
- System.Pack_22
- System.Pack_23
- System.Pack_24
- System.Pack_25
- System.Pack_26
- System.Pack_27
- System.Pack_28
- System.Pack_29
- System.Pack_30
- System.Pack_31
- System.Pack_33
- System.Pack_34
- System.Pack_35
- System.Pack_36
- System.Pack_37
- System.Pack_38
- System.Pack_39
- System.Pack_40
- System.Pack_41
- System.Pack_42
- System.Pack_43
- System.Pack_44
- System.Pack_45
- System.Pack_46
- System.Pack_47
- System.Pack_48
- System.Pack_49
- System.Pack_50
- System.Pack_51
- System.Pack_52
- System.Pack_53
- System.Pack_54
- System.Pack_55
- System.Pack_56
- System.Pack_57
- System.Pack_58
- System.Pack_59
- System.Pack_60
- System.Pack_61
- System.Pack_62
- System.Pack_63
- System.Parameters
- System.Pool_Global
- System.Pool_Local
- System.Pool_Size
- System.Powten_Table
- System.Program_Info
- System.Pure_Exceptions
- System.Restrictions
- System.Rident
- System.Scalar_Values
- System.Secondary_Stack
- System.Sequential_IO
- System.Shared_Storage
- System.Soft_Links
- System.Soft_Links.Tasking
- System.String_Ops_Concat_3
- System.String_Ops_Concat_4
- System.String_Ops_Concat_5
- System.Stack_Checking
- System.Standard_Library
- System.Stack_Checking.Operations
- System.Stream_Attributes
- System.String_Compare
- System.String_Ops
- System.Tasking.Async_Delays
- System.Tasking.Entry_Calls
- System.Tasking.Protected_Objects
- System.Task_Primitives.Operations
- System.Tasking.Restricted.Stages
- System.Tasking.Debug
- System.Tasking.Initialization
- System.Tasking
- System.Task_Primitives
- System.Tasking.Queuing
- System.Tasking.Rendezvous
- System.Tasking.Restricted
- System.Tasking.Stages
- System.Tasking.Utilities
- System.Tasking.Task_Attributes
- System.Task_Primitives.Interrupt_Operations
- System.Tasking.Protected_Objects.Entries
- System.Tasking.Protected_Objects.Operations
- System.Tasking.Protected_Objects.Single_Entry
- System.Traceback
- System.Traces
- System.Traceback_Entries
- System.Traces.Tasking
- System.Unsigned_Types
- System.Vax_Float_Operations
- System.Val_Bool
- System.Val_Char
- System.Val_Dec
- System.Val_Enum
- System.Val_Int
- System.Val_LLD
- System.Val_LLI
- System.Val_LLU
- System.Val_Real
- System.Val_Uns
- System.Val_Util
- System.Val_WChar
- System.Vectors.Boolean_Operations
- System.Vectors
- System.Version_Control
- System.VMS_Exception_Table
- System.WCh_JIS
- System.WCh_StW
- System.WCh_WtS
- System.Wid_Bool
- System.Wid_Char
- System.Wid_Enum
- System.Wid_LLI
- System.Wid_LLU
- System.Wid_WChar
- System.WWd_Char
- System.WWd_Enum
- System.Wwd_WChar