複製鏈接
請複製以下鏈接發送給好友

Windows結構

鎖定
系統虛擬機器VM: 是系統的環境名,在這種環境下,系統將支持所有的Windows應用程序和Windows子系統組件。如圖形設備接口(GDI)等。32位Windows應用程序:是一種新Windows應用程序,是Microsoft Win32應用程序編程接口API的一個子集。
軟件名稱
Windows結構
系統虛擬機器
系統的環境名
外    殼
一種32位的Windows應用程序
管理程序
l User

目錄

Windows結構外殼

是一種32位的Windows應用程序,它為系統l提供必須的用户界面。
Windows結構 Windows結構
16位Windows應用程序:是在Windows 3.x上使用的應用程序。
Windows內核:支持Windows應用程序所要求的低級服務,如動態內存分配。

Windows結構詳細內容

GDI:是Windows圖形功能的核心。
User:是Windows管理程序。
MS-DOS虛擬機器:支持在Windows下的MS-DOS應用l程序。
在linux下,WINDOW結構定義在curses.h頭文件中,可能是在/usr/include或/usr/include/stdlib.h目錄下,
typedef struct _win_st WINDOW;
struct _win_st
{
    NCURSES_SIZE_T _cury, _curx; /* current cursor position */
    /* window location and size */
    NCURSES_SIZE_T _maxy, _maxx; /* maximums of x and y, NOT window size */
    NCURSES_SIZE_T _begy, _begx; /* screen coords of upper-left-hand corner */
    short _flags; /* window state flags */
    /* attribute tracking */
    attr_t _attrs; /* current attribute for non-space character */
    chtype _bkgd; /* current background char/attribute pair */
    /* option values set by user */
    bool _notimeout; /* no time out on function-key entry? */
    bool _clear; /* consider all data in the window invalid? */
    bool _leaveok; /* OK to not reset cursor on exit? */
    bool _scroll; /* OK to scroll this window? */
    bool _idlok; /* OK to use insert/delete line? */
    bool _idcok; /* OK to use insert/delete char? */
    bool _immed; /* window in immed mode? (not yet used) */
    bool _sync; /* window in sync mode? */
    bool _use_keypad; /* process function keys into KEY_ symbols? */
    int _delay; /* 0 = nodelay, <0 = blocking, >0 = delay */
    struct ldat *_line; /* the actual line data */
    /* global screen state */
    NCURSES_SIZE_T _regtop; /* top line of scrolling region */
    NCURSES_SIZE_T _regbottom; /* bottom line of scrolling region */
    /* these are used only if this is a sub-window */
    int _parx; /* x coordinate of this window in parent */
    int _pary; /* y coordinate of this window in parent */
    WINDOW *_parent; /* pointer to parent if a sub-window */
    /* these are used only if this is a pad */
    struct pdat
    {
        NCURSES_SIZE_T _pad_y, _pad_x;
        NCURSES_SIZE_T _pad_top, _pad_left;
        NCURSES_SIZE_T _pad_bottom, _pad_right;
    } _pad;
    NCURSES_SIZE_T _yoffset; /* real begy is _begy + _yoffset */
    #ifdef _XOPEN_SOURCE_EXTENDED
    cchar_t _bkgrnd; /* current background char/attribute pair */
    #if 0
    int _color; /* current color-pair for non-space character */
    #endif
    #endif
};