[][src]Struct winproc::SystemInfo

pub struct SystemInfo {
    pub processor_architecture: ProcessorArchitecture,
    pub page_size: u32,
    pub minimum_application_address: *mut c_void,
    pub maximum_application_address: *mut c_void,
    pub active_processor_mask: usize,
    pub processor_count: u32,
    pub allocation_granularity: u32,
    pub processor_level: u16,
    pub processor_revision: u16,
}

Information about the current system.

Fields

processor_architecture: ProcessorArchitecture

The processor architecture of the installed operating system.

page_size: u32

The page size and the granularity of page protection and commitment. This is the page size used by the VirtualAlloc function.

minimum_application_address: *mut c_void

A pointer to the lowest memory address accessible to applications and dynamic-link libraries (DLLs).

maximum_application_address: *mut c_void

A pointer to the highest memory address accessible to applications and DLLs.

active_processor_mask: usize

A mask representing the set of processors configured into the system. Bit 0 is processor 0; bit 31 is processor 31.

processor_count: u32

The number of logical processors in the current group.

allocation_granularity: u32

The granularity for the starting address at which virtual memory can be allocated.

processor_level: u16

The architecture-dependent processor level. It should be used only for display purposes.

If processor_architecture is Intel, processor_level is defined by the CPU vendor.

If processor_architecture is IA64, processor_level is set to 1.

processor_revision: u16

The architecture-dependent processor revision.

Processor Value
Intel Pentium, Cyrix, or NextGen 586 The high byte is the model and the low byte is the stepping.
For example, if the value is xxyy, the model number and stepping can be displayed as follows:
Model xx, Stepping yy
Intel 80386 or 80486 A value of the form xxyz.
If xx is equal to 0xFF, y - 0xA is the model number, and z is the stepping identifier.
If xx is not equal to 0xFF, xx + 'A' is the stepping letter and yz is the minor stepping.

Trait Implementations

impl From<SYSTEM_INFO> for SystemInfo
[src]

impl Eq for SystemInfo
[src]

impl Send for SystemInfo
[src]

impl Sync for SystemInfo
[src]

impl Copy for SystemInfo
[src]

impl PartialEq<SystemInfo> for SystemInfo
[src]

impl Clone for SystemInfo
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for SystemInfo
[src]

impl Hash for SystemInfo
[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]