当前位置:文档之家› nvram

nvram

nvram
nvram

由NVRAM文件管理器管理的数据单元都是逻辑数据项,一个数据项可以被看作为一个固定大小的记录,所以我们根据他们的记录的大小将所有的逻辑数据项分为两种类型;

1,透明数据元(Transparent EF):这个类型的数据项的记录的大小为一个byte;因此,这种数据项可以认为是一系列的bytes;

2,线性固定数据元(linear fixed EF):这个类型的数据项的记录的大小远大于一个byte;所有的数据按线性存储;

如下图所示:

一,先来看“线性固定数据元”

首先我们来新建一项NV;分析每个步骤的原理;

总的步骤必须遵循如下几步:

1,在文件:“nvram_user_defs.h”的枚举结构体“nvram_LID_cust_enum”中定义一个新的LID:“NVRAM_EF_[new logical data item name]_LID”;

注意:请将新LID项加在NVRAM_EF_LAST_LID_CORE.之前;

ex:NVRAM_EF_PORT_SETTING_LID;

lzq:这个LID项的主要作用是什么呢?为什么一定要添加一个LID?因为NVRAM中的数据是在fs文件系统的管理中操作的,而文件操作需要识别数据项和管理数据项,都是通过这个LID来操作的;

2,在文件:“nvram_user_defs.h”中定义两个常量:SIZE和TOTAL;

ex:

#define NVRAM_EF_PORT_SETTING_SIZE 16

#define NVRAM_EF_PORT_SETTING_TOTAL 1

lzq:既然是一块内存,很明显就必须要设置这块内存的大小;这样将结构体的数据保存

和读取时都很容易的操作到了特定的内存中;

并且有效的控制的内存不足和溢出的问题;就像是初始话一个数组的大小;

(lzq_091216_补充:如果size是个结构体,则注意这个结构体的定义就和上面的定义写在一起;)

如:

#ifdef __HL_WEB_PHONE__

typedef struct

{

kal_uint8 status; //open or close;

kal_uint32 phone_number[11]; //本机号码;

kal_uint8 number_exten[10]; //号码前缀;

kal_uint8 number_zone[8]; //本地区号;

}MY_WEB_PHONE;

#define NVRAM_EF_MY_WEB_PHONE_DATA_SIZE sizeof(MY_WEB_PHONE) //MY_WEB_PHONE

#define NVRAM_EF_MY_WEB_PHONE_DATA_TOTAL 1 //1

#endif

3,在文件:“custom_nvram_editor_data_item.h”中定义版本号:“NVRAM_[new data item name]_LID_VERNO”。

ex:#define NVRAM_EF_PORT_SETTING_LID_VERNO "000"

lzq:由于文件系统管理了这些NV数据;这些数据难免要进行各式的操作,比如修改,添加,删除的操作,那么文件系统是怎么知道它所管理的这些NV数据已经改变了呢?就是通过这个版本号来识别的,比如你修改了某个NV数据但没有更该它的版本号,文件系统是不会对原始数据更改的;只有在更改了NV值并且修改了版本号,这时文件系统才识别到已经更改,并进行相应的数据更新

例如 short类型NV的版本号是:NVRAM_EF_CACHE_SHORT_LID_VERNO ;

4,在文件:“nvram_user_config.c”中设置这个新nv项的默认值;

ex:

static kal_uint8 const NVRAM_EF_PORT_SETTING_DEFAULT[] = {

0x01, 0x00, 0x00, 0x00,

0x00, 0xC2, 0x01, 0x00,

0x00, 0xC2, 0x01, 0x00,

0x01, 0x00, 0x00, 0x00

};

lzq:在申请了一块内存后,需要进行初始化默认值;这样在手机的异常时,比如恢复出厂设置时,NV将只载入默认值;

5,在文件:“nvram_user_config.c”中的结构体数组logical_data_item_table_cust[]中新添加一个条目(Add a new entry);

注意:这个新的条目是设置这个LID项的属性的;以提供文件系统来对它操作;

ex:

{

NVRAM_EF_PORT_SETTING_LID,

NVRAM_EF_PORT_SETTING_SIZE,

NVRAM_EF_PORT_SETTING_TOTAL,

NVRAM_EF_PORT_SETTING_DEFAULT,

NVRAM_ATTR_AVERAGE,

NVRAM_CATEGORY_USER,

"MP1y",//注意:在这里如果上个是MP1y,那么这里应该为加一为:MP2y,表明有新的条目添加了;

VER(NVRAM_EF_PORT_SETTING_LID),

"Port Settings",

NVRAM_RESERVED_VALUE

},

6,在文件custom_nvram_editor_data_item.h 中添加结构体定义;这个结构体定义只为了在使用mata工具时,能看到的新添加的NV项的结构体数组中的各个值;如果不添加将在mata工具中看不到这个新添加的nv项;

ex:这个是透明数据元byte在META工具中将要显示的byte的NV项中所有记录的字符串描述数组的结构体;

typedef struct

{

kal_uint8 CacheByte[NVRAM_CACHE_SIZE];

} nvram_cache_byte_struct ;

7,在文件:custom_nvram_editor_data_item.h中.添加 bit-level 说明;这个也是只为了在mata工具中的操作而实现的;在程序中并用不到;

ex:这个是byte项的NV 的META工具中的字符串初始化默认值;

LID_BIT VER_LID(NVRAM_EF_CACHE_BYTE_LID) nvram_cache_byte_struct

*NVRAM_CACHE_TOTAL

{

CacheByte:"One-byte parameter setting ";

CacheByte[14]

{

default_lang:8 "Default Language "

{

};

};

CacheByte[24]

{

time_zone:8 "Time Zone (Current City )"

{

};

};

CacheByte[25]

{

date_format:8 "Time Format " {

};

};

CacheByte[26]

{

date_format:8 "Date Format " {

};

};

};

整个过程如下图:

lzq总结:NV数据实现了数据的读写保护,保证了数据在手机上正常而安全的使用;我们知道对于手机上的一些属性值,比如开机声音,待机画面等是由一些数据来控制的,这些数据是全局的,可以在随时随地的对它调用;如果是在一个游戏应用中,我们只要将它设置为一个全局的变量,在游戏开始时进行初始化就可以了;但在手机上我们必须保证这些数据不能丢失,并且在整个系统运行中当系统出现数据损坏并崩溃时,这些数据也是不会被丢失和更改;保证了手机系统的安全运行;也许我们可以说为什么不用一个文件来保存这些数据呢?我们知道如果用文件的话,虽然实现了数据的异地保存,但一旦这个文件丢失,将导致系统致命错误;另外,这些数据接受用户的个性修改,如果用文件保存的话,数据修改并不方便;而且在读写速度上明显不及直接NVRAM存储器的操作;因此,我们可以这样认为,NV让我们将一些数据从全局中取了出来,并放入了一个不能擦除的存储器中保护起来;

接下来让我们看看NVRAM的结构:

从上图中我们发现,在文件系统中Data Item Management System 管理着NVRAM;而这个管理系统(Data Item Management System)通过内部的一个查询表(lookup table)来获得每个数据项的具体细节;

而这个查询表(lookup table )包含以下4个部分:

1. MT reign, for project independent data items;

2. MP reign, for MTK /PMT common applications;

3. CT reign, for the customer usage.

4. CV reign, for the vendor of customer usage.

下图显示了NVRAM定制文件布局。我们经常操作的文件一般在CT部分;

NVRAM LID 的定义部分都在以下几个文件中进行:

- nvram_data_items.h : for MT use

- nvram_data_items.c : for MT use

- nvram_common_defs.h : for MP use

- nvram_common_config.c : for MP use

- nvram_user_defs.h : for CT use

- nvram_user_config.c : for CT use

- nvram_cust_pack.c: for CustPack use

- nvram_vendor_config.c: for CV use

- nvram_vendor_defs.h: for CV use

META tool 的说明介绍内容都在以下几个文件中实现;:

- nvram_editor_data_item.h: for MT use

- common_nvram_editor_data_item.h : for MP use

- custom_ nvram_editor_data_item.h : for CT use

- vendor_nvram_editor_data_item.h: for CV use

现在我们回头去看步骤5,添加新的条目的操作中,我们会问,为什么要添加新的条目,而且在这些变量中,各个项的涵义是什么呢? 如下:

ex:

{

NVRAM_EF_PORT_SETTING_LID,

NVRAM_EF_PORT_SETTING_SIZE,

NVRAM_EF_PORT_SETTING_TOTAL,

NVRAM_EF_PORT_SETTING_DEFAULT,

NVRAM_ATTR_AVERAGE,

NVRAM_CATEGORY_USER,

"MP1y",

VER(NVRAM_EF_PORT_SETTING_LID),

"Port Settings",

NVRAM_RESERVED_VALUE

},

我们刚才知道了,管理系统(Data Item Management System)通过内部的一个查询表(lookup table)来获得每个数据项的具体细节的,我们在这里实现的这个新的条目就是为了让管理系统通过查询表来找到它并对它进行操作;所以每个新的LID都要来这里添加新的条目;那么每个新的条目的具体的数据结构是什么样的呢?如下是它的定义:

typedef struct

{

nvram_lid_enum LID;

kal_uint16 size;

kal_uint16 total_records;

kal_uint8 const *default_value;

nvram_attr_enum attr;

nvram_category_enum category;

kal_char fileprefix[FILE_PREFIX_LEN + 1];

kal_char fileverno[FILE_VERNO_LEN + 1];

kal_char *description;

kal_uint8 record_ID;

} ltable_entry_struct;

具体涵义如下:

接下来分别分析一些具体数据项的涵义:

1,属性attr ;

属性选项是个可选的,它由枚举:nvram_attr_enum定义:

NVRAM_ATTR_AVERAGE: 0x0000 //这是个默认的属性选项;

NVRAM_ATTR_IMPORTANT: 0x0001 //当一个IMPORTANT的数据项被更改时,会先将相关程序停止,并被要求进行备份和保存,只有在成功备份和保存后,才会将程序重新安全开启;

NVRAM_ATTR_WRITEPROTECT: 0x0002 //写保护,只读;

NVRAM_ATTR_MULTIPLE: 0x0004 //如果一个数据项的属性是multiple,那么NVRAM会自动将它做一个备份,并当在其中有一个数据被损坏时,NVRAM会从另个数据中将它还原;

NVRAM_ATTR_CONFIDENTIAL: 0x0008 //对数据采用对称算法进行加密或解密;所以:mulitiple+confidential能实现最好的数据保护;

NVRAM_ATTR_MULTIREC_READ: 0x0010 //适用于那些需要一次性对一数据进行多次读取操作的数据项;

NVRAM_ATTR_OTP: 0x0020 //This attribute is supported only if One Time

Programming (OTP) function exists on the flash storage. NVRAM will maintain a small table to OTP region; the table consists of all OTP data items, by order in the lookup table.

NVRAM_ATTR_DIFFERENCE: 0x0080 //NVRAM保留。

2,模板category;

这个选项和attr非常相似,可以说是attr的分支;一个数据项可以属于很多category的或者是很多数据项属于一个category;所以NVRAM需要找到那些需要被category重新设置的数据项;它的枚举包含如下:

NVRAM_CATEGORY_USER: 0x0000 //默认属性;

NVRAM_CATEGORY_SYSTEM: 0x0001 //一旦版本号更改,这个数据项将被初始化为默认值;

NVRAM_CATEGORY_COMPOSED: 0x0002 //NVRAM 保留;

NVRAM_CATEGORY_FACTORY: 0x0004 //当MSG_ID_NVRAM_RESET_REQ随着reset_category = NVRAM_RESET_FACTORY,NVRAM将重新设置NVRAM_CATEGORY_FACTORY的值,并且清除预定义的文件和设置;

NVRAM_CATEGORY_MULTI_DEFAULT: 0x0008 //这样的数据项的每个记录可能有不能的值,但是所有的默认值必须在一个连续的数组里。

NVRAM_CATEGORY_CUSTPACK: 0x0010 //NVRAM will auto assign default values in CustPack BIN to this category. Once the version of CustPack BIN changes, NVRAM_CATEGORY_CUSTPACK will be reset to default.

NVRAM_CATEGORY_BRANCH: 0x0020 //This category of data item will be kept even the branch number of software version changes. Every time the branch number is different from previous one, NVRAM will clear all data items except

NVRAM_CATEGORY_BRANCH.

NVRAM_CATEGORY_SHADOW: 0x0040 //This category is only used for single bank NOR-flash. With single bank NOR-flash,only this category could

be modified in normal mode. NVRAM uses Shadow mechanism to make device type transparent to applications. Please see chapter 7. to get more details.IMPORTANT: Shadow needs additional memory.

NVRAM_CATEGORY_SHADOW_MS: 0x0080 //When USB boot mode, all data item can’t be accessed because of storage exporting. Thus NVRAM uses Shadow mechanism to make a few applications still can access their data.IMPORTANT: Shadow needs additional memory.

我们再来看看LID文件的命名和LID的版本号规则:

File Name Format:

1. File Name: The first 4 bytes of the File Name Format are used for the file name,

which needs to be

distinguishable from all other file names. The File naming rule:

- Data items in the core: MT[x][y], where x and y in the range (0~9, a~z)

- Data items in custom/common folder: MP[x][y] , where x and y in the range (0~9, a~z)

- Data items in custom/app folder: CT[x][y] , where x and y in the range (0~9, a~z) - Data items in vendor folder: CV[x][y] , where x and y in the range (0~9, a~z) -

?? 4-byte filenames. The file naming MT[x][y], MP[x][y] ,CT[x][y] and CV[]x[y] allow maximum sequence

number up to 36*36 = 1296 each.

IMPORTANT: Any file name MUST be unique.

2. M byte: The byte is used to indicate the ‘multiple’ attribute of the data item. - If a data item is defined to be ‘multiple’, M can be ‘a’ or ‘b’ to represent two copies of the file.

- If a data item is defined w/o the ‘multiple’ attribute, M will be ‘_’. 3. Version: Three human-readable digits, for example, ‘000’?? the version number is incremented when a data item is added / deleted or its data structure is changed, or its attribute is changed.

?? For ease of reading, the 3-byte version number can be used from 000 ~ 999. That means a single LID can be versioned 1000 times. If the limit is hit, a work-around is to delete the LID and make it a new one with version 000.

二,再来看“透明逻辑数据元”

这样的数据项已经实现了的三个数据项:

1,byte 数据项;

2,short数据项;

3,double数据项;

这些数据项都已经实现了数据项LID的定义,数据项的定义和值的定义;如:

LID: 在文件Nvram_user_defs.h中:

NVRAM_EF_CACHE_BYTE_LID = NVRAM_LID_CUST_BEGIN,

NVRAM_EF_CACHE_SHORT_LID,

NVRAM_EF_CACHE_DOUBLE_LID,

-----------------------------------------------------------------------------------------------

size:custom_mmi_default_value.h中:

#define NVRAM_CACHE_SIZE 512 //很明显byte,short ,double的数据项都有512个记录,一个记录只有一个byte值;

#define NVRAM_CACHE_TOTAL1

----------------------------------------------------------------------------------------------

新增数据项在文件:Nvram_user_config.h中

//ltable_entry_struct定义前面用下面的一个图片中也有

ltable_entry_struct logical_data_item_table_cust[] =

{

{

NVRAM_EF_CACHE_BYTE_LID,

NVRAM_CACHE_SIZE, // 512

NVRAM_CACHE_TOTAL, //1

NVRAM_EF_ZERO_DEFAULT,

NVRAM_ATTR_AVERAGE,

NVRAM_CATEGORY_USER | NVRAM_CATEGORY_CUSTPACK | NVRAM_CATEGORY_SHADOW_MS,

"CT00",

VER(NVRAM_EF_CACHE_BYTE_LID),

"1-byte Setting",

NVRAM_RESERVED_VALUE

}

,{

NVRAM_EF_CACHE_SHORT_LID,

NVRAM_CACHE_SIZE, // 512

NVRAM_CACHE_TOTAL, // 1

NVRAM_EF_ZERO_DEFAULT,

NVRAM_ATTR_AVERAGE,

NVRAM_CATEGORY_USER | NVRAM_CATEGORY_CUSTPACK | NVRAM_CATEGORY_SHADOW_MS,

"CT01",

VER(NVRAM_EF_CACHE_SHORT_LID),

"2-byte Setting",

NVRAM_RESERVED_VALUE

}

,{

NVRAM_EF_CACHE_DOUBLE_LID,

NVRAM_CACHE_SIZE, //512

NVRAM_CACHE_TOTAL, //1

NVRAM_EF_ZERO_DEFAULT,

NVRAM_ATTR_AVERAGE,

NVRAM_CATEGORY_USER | NVRAM_CATEGORY_CUSTPACK | NVRAM_CATEGORY_SHADOW_MS,

"CT02",

VER(NVRAM_EF_CACHE_DOUBLE_LID),

"8-byte Setting",

NVRAM_RESERVED_VALUE

}

...

默认值:

kal_uint8 const NVRAM_EF_ZERO_DEFAULT[] = { 0x00 };

我们先来看一个条目的数据结构:

因为有上面的说明:

-----------------------------------------------------------------------------------------------

#define NVRAM_CACHE_SIZE 512 //很明显byte,short ,double的数据项都有512个记录,一个记录只有一个byte值;

#define NVRAM_CACHE_TOTAL1

-----------------------------------------------------------------------------------------------

上图中显示,当total_records = 1时,说明这个LID为透明数据元,size就表示这个逻辑数据项的大小;比如byte,那么就是size=1*512;

如果 total_records != 1 时,说明这个LID为线性固定数据元,total_records 就是记录的个数,size就是每个记录的大小;

( lzq注:我们从这两种数据元的特征中可以得出这样的结论:

透明数据元相当于一维数组;已经实现了的数据项LID就相当于一个数组byte record[ Record_ID ]; 其中数组个数512; Recodr_ID为枚举ID;

short record2[ Record_ID ]; //Record_ID由用户自己定义并初始化;

double record3[ Recodr_ID ]; //线性固定数据元相当于二维数组:已经实现了的数据项LID就相当于My_type_struct records[ total_records ][ size ];

wwj理解:total_records = 1是相当于一维数组,透明数据元,无论是

byte,short,double都是如此;

total_records > 1 是相当于二维数组,线性固定数据元,无论是

byte,short,double都是如此。

由此分析,我们可以直接当做一个byte数据项的一个记录来直接添加到里面;即在数组record[]中的某个位置从新添加一个值;而不需要另外去实现一个新的byte的LID;大大的简化了操作;而且在byte,short,double的数据项里新添加一个数据很方便,具体只有两步骤:

1,定义menu_ID

typedef enum

{

......

#ifdef __HQ_CLAMSHELL_TONE__CONTROL__ //参考yj的一个滑盖声音模块的LID;

NVRAM_CLAMSHELL_TONE_CONTROL_SETTING, //定义一个Record_ID;

#endif

......

NVRAM_LAST_BYTE_ELEMENT

} BYTEDATA;

2,将这个数组值设置一个默认值;

#ifdef __HQ_CLAMSHELL_TONE__CONTROL__

BYTE_ENTRY( NVRAM_CLAMSHELL_TONE_CONTROL_SETTING,0x01 ),//默认值为0x01;

#endif

Appendix:

一,当数据都已经定义完后剩下的就是怎么使用这个数据了;

对透明数据(一维数组)的读写操作有:

WriteValue(NVRAM_CLAMSHELL_TONE_CONTROL_SETTING, &data, DS_BYTE, &error);

ReadValue (NVRAM_CLAMSHELL_TONE_CONTROL_SETTING, &data, DS_BYTE, &error);

对线性固定数据元(二维数组)的读写操作有:

ReadRecord (

NVRAM_EF_TIMING_SMS_LIST_LID, //参考宏:__HQ_TIMING_SMS__

(U16) (i + 1),

(void*)&(g_timingsms_cntx.TaskList[i]),

NVRAM_TIMING_SMS_LIST_RECORD_SIZE,

&error);

WriteRecord (

NVRAM_EF_TIMING_SMS_LIST_LID,

(U16) (index + 1),

(void*)&(g_timingsms_cntx.TaskList[index]),

NVRAM_TIMING_SMS_LIST_RECORD_SIZE,

&error);

二,现在来看下NVRAM的META工具中用到的‘位级别的注释’(bit_level description);

也就是在上面的步骤6和步骤7中的操作;

先让我们来看个资料:NVRAM LID脚本

这个特殊的脚本能够用来描述NVRAM LID;在编译的过程中,这个脚本会解析并且将信息保存到有cgen.exe生成的数据库中;PC工具(如META工具)可以利用这个数据库去解析这个LID的原始数据;这个脚本可以被保存在一个头文件中并将在由cgen.exe解析之前进行预处理;程序员可以利用标准c语言(,//注释)去编程,并且可以用宏“#define”去控制;

例如:

typedef struct {

kal_uint8 context_id;

kal_uint8 nsapi;

kal_uint8 pdp_addr_type;

kal_uint8 pdp_addr_len;

kal_uint8 addr_val[4];

qos_struct req_qos;

qos_struct min_qos;

kal_uint8 apn_len;

kal_uint8 apn[100];

kal_uint8 pcomp_algo;

kal_uint8 dcomp_algo;

kal_uint8 context_type;

kal_uint8 primary_context_id;

kal_uint8 is_sib_defined;

} nvram_ef_tcm_PDP_profile_record_struct; //lzq:第六步:定义META工具使用的数据结构;

typedef struct {

kal_uint8 qos_length;

kal_uint8 unused1;

kal_uint8 delay_class;

kal_uint8 reliability_class;

kal_uint8 peak_throughput;

kal_uint8 unused2;

kal_uint8 precedence_class;

kal_uint8 unused3;

kal_uint8 mean_throughput;

kal_uint8 traffic_class;

kal_uint8 delivery_order;

kal_uint8 delivery_of_err_sdu;

kal_uint8 max_sdu_size;

kal_uint8 max_bitrate_up_lnk;

kal_uint8 max_bitrate_down_lnk;

kal_uint8 residual_bit_err_rate;

kal_uint8 sdu_err_ratio;

kal_uint8 transfer_delay;

kal_uint8 traffic_hndl_priority;

kal_uint8 guarntd_bit_rate_up_lnk;

kal_uint8 guarntd_bit_rate_down_lnk;

} qos_struct;//lzq:在这个例子中,有嵌入式结构体定义;实现原理一样,不过要用到'" 、"来获得子成员变量;

BEGIN_NVRAM_DATA

LID_BIT VER_LID(NVRAM_EF_TCM_PDP_PROFILE_LID)

nvram_ef_tcm_PDP_profile_record_struct*1

{

context_id: "" {}; //lzq:这个是上面定义的数据结构(第6步中实现的)

nvram_ef_tcm_PDP_profile_record_struct中的成员变量;

addr_val: "Statistic PDP address value, in MSB" {};//lzq:语法:结构体成员变量名:"描述语" {更多子项,可以为空 };

addr_val[0]

{

addr_v1:4 " Address Value 1" {};

addr_v2:4 " Address Value 2" {};

};

req_qos: "Requested QoS" {};

req_qos.qos_length: "Length of QoS" {};

req_qos.unused1: "Delay Class"

{

req_qos_identifier:3 " Request QoS Identifier" {

0x0:"Req QoS Invaild";

0x2:"Req QoS Vaild";

0x4:"Req QoS Under Verifing";

};

req_qos_list:2

{

0x0:"Req QoS List 1";

0x1:"Req QoS List 2";

0x2:"Req QoS List 3";

};

};

req_qos.delay_class: "Delay Class" {};

req_qos.reliability_class: "Reliability Class" {

reliablity_class:8

{

0x00: "Realiablity Class Zero";

0x01: "Realiablity Class Low";

0x02: "Realiablity Class Medium";

}

}

req_qos.peak_throughput: "Peak Throughput" {}; apn: "APN string" {} ;

};

END_NVRAM_DATA

再来看第二个例子,透明数据员bity的描述实现:typedef struct

{

kal_uint8 CacheByte[NVRAM_CACHE_SIZE];

} nvram_cache_byte_struct;

LID_BIT VER_LID(NVRAM_EF_CACHE_BYTE_LID)

nvram_cache_byte_struct *NVRAM_CACHE_TOTAL

{

CacheByte :"One-byte parameter setting";

CacheByte [14]//lzq:这里表示在结构体成员变量CacheByte[]数组的第14个数据项的描叙;

{

default_lang:8 "Default Language" //default_lang: 8 ---表示直接显示这个串;"Default Language"---表示对这个数据项的补充说明;

{

};

};

CacheByte[24] //lzq:这里表示在结构体成员变量CacheByte[]数组的第24个数据项的描叙;

{

time_zone:8 "Time Zone (Current City)"

{

};

};

CacheByte[25]//lzq:这里表示在结构体成员变量CacheByte[]数组的第25个数据项的描叙;

{

date_format:8 "Time Format"

{

};

};

CacheByte[26]//lzq:这里表示在结构体成员变量CacheByte[]数组的第26个数据项的描叙;

{

date_format:8 "Date Format"

{

};

};

更多的实现功能可以参考原程序中的定义实现,再结合META工具去查看该数据项的显示效果;

lzq自己添加的LID项,如下图;

在实现的过程中,遇到一个问题:

当我们完成所有的步骤(7步)后,当用META工具察看时却发现不了自己新添加的那个LID:NVRAM_EF_MY_NEW_DATA_LID;

分析原因:没有看到LID说明两个问题:

1,在实现的过程中有的地方出错;

2,在用META工具查看时,选择了不对的datebase(数据库),导致手机database和META 工具的database版本不对;

操作:在检查了所有的原代码后,确认没有出错,再从新new了一遍后,重新用META 工具查看时,出现如下图的错误:

说明在选择database时选择了错误的版本,因此用META工具看到的还是原来的老的版本的数据,因此看不到我们新添加的LID;

Appendix2:

2009-12-16 下午 05:24:18

一,下面来具体看看两个不同的NV项的实现过程,具体的步骤还是和上面的一样的;这里面实现两中NV项:

NV项一:_LZQ_TEST_ :他的数据结构比较简单,只是一个数组;

NV项二:__HL_WEB_PHONE__ :他的数据结构是个结构体,和NV项一相比有些地方实现不一样;

具体实现如下:

//--------------------在文件中定义NV项的LID:nvram_user_defs.h----------

#ifdef _LZQ_TEST_ //__HQ_ADD_BOOKMARK_DEFAULT__

NVRAM_EF_MY_NEW_DATA_LID,

#endif

#ifdef __HL_WEB_PHONE__

NVRAM_EF_MY_WEB_PHONE_DATA_LID,

#endif

//--------------------在文件中定义NV项的大小和个数:nvram_user_defs.h----------

#ifdef _LZQ_TEST_ //__HQ_ADD_BOOKMARK_DEFAULT__

#define NVRAM_EF_MY_NEW_DATA_SIZE 10 // 10 byte each record

CAD命令、特殊符号代码大全

常用命令: A——ARC——圆弧B——BLOCK——块定义C——CIRCLE——圆D——DIMSTYLE——标注样式E/DEL键——ERASE——删除F——FILIET——倒圆角H——BHATCH——填充L——LINE——直线 M/S——MOVE——移动O——OFFSET——偏移P——PAN——实时平移(图标为小手)X——EXPLODE——分解PO——POINT——点XL——XLINE——射线ML——MLINE——多线PL——PLINE——多段线POL——POLYGON——正多边形REC——RECTANGLE——矩形DO——DONUT——圆环EL——ELLIPSE——椭圆CO——COPY——复制MI——MIRROR——镜像AR——ARRAY——阵列RO——ROTATE——旋转TR——TRIM——修剪EX——EXTEND——延伸CHA——CHAMFER——倒角F——FILIET——倒圆角BR——BREAK——打断 尺寸标注: DLI——DIMLINEAR——直线标注DAL——DIMALIGNED——对齐标注DRA——DIMRADIUS——半径标注DDI——DIMDIAMETER——直径标注DAN——DIMANGULAR——角度标注DCE——DIMCENTER——中心标注DOR——DIMORDINATE——点标注TOL——TOLERANCE——标注形位公差LE——QLEADER——快速引出标注DBA——DIMBASELINE——基线标注DCO——DIMCONTINUE——连续标注DED——DIMEDIT——编辑标注DOV——DIMOVERRIDE——替换标注系统变量 常用CTRL快捷键: 【CTRL】+1—PROPERTIES—修改特性【CTRL】+2—ADCENTER—设计中心 【CTRL】+O——OPEN——打开文件【CTRL】+N/M——NEW——新建文件 【CTRL】+P——PRINT——打印文件【CTRL】+S——SAVE——

dos系统命令大全

常用doc命令大全 dos和windows最大的不同在于dos命令方式操作,所以使用者需要记住大量命令及其格式使用方法,dos命令分为内部命令和外部命令,内部命令是随每次启动的https://www.doczj.com/doc/2616281056.html,装入并常驻内存,而外部命令是一条单独的可执行文件。在操作时要记住的是,内部命令在任何时候都可以使用,而外部命令需要保证命令文件在当前的目录中,或在autoexec.bat文件已经被加载了路径。 常用的内部命令 dos的内部命令是dos操作的基础,下面就来介绍一些常用的dos内部命令。 1、dir 含义:显示指定路径上所有文件或目录的信息 格式:dir [盘符:][路径][文件名] [参数] 参数: /w:宽屏显示,一排显示5个文件名,而不会显示修改时间,文件大小等信息; /p:分页显示,当屏幕无法将信息完全显示时,可使用其进行分页显示; /a:显示具有特殊属性的文件; /s:显示当前目录及其子目录下所有的文件。 举例:dir /p 将分屏显示当前目录下文件。在当前屏最后有一个“press any key to continue . . .”提示,表示按任意键继续。 2、cd 含义:进入指定目录 格式:cd [路径] 举例:cd dos cd命令只能进入当前盘符中的目录,其中“cd\”为返回到根目录,“cd..”为返回到上一层目录。 3、md 含义:建立目录 格式:md [盘符][路径] 举例:md temp 表示在当前盘符下建立一个名为temp的目录。 4、rd 含义:删除目录 格式:rd [盘符][路径] 举例:rd temp 表示删除当前路径下的temp目录,需要注意的是,此命令只能删除空目录。 5、copy 含义:拷贝文件 格式:copy [源目录或文件] [目的目录或文件] 举例1:copy c:\*.com d:\",表示将c盘根目录下所有扩展名为com的文件拷贝到d盘根目录中。 举例2:copy c:\autoexec.bat c:\autoexec.bak

DOS命令学习_DOS命令八大经典案例_集合

Windows命令行(DOS命令)教程 一.命令行简介 命令行就是在Windows操作系统中打开DOS窗口,以字符串的形式执行Windows管理程序。DOS——Disk Operation System 磁盘操作系统 在Win9x/Me的开始菜单中的运行程序中键入"command"命令,可进入命令行界面。 在Win2000/NT的开始菜单中的运行程序中键入"cmd"命令,可进入命令行界面。 下面我用讲到的DOS命令都可以在Windows Me操作系统中执行。 那么,我们如何进入命令行窗口? 开始——〉运行——〉键入command命令——〉回车 进入了命令行操作界面(DOS窗口),在DOS窗口中只能用键盘来操作。如下所示: \ 二.符号约定 为了便于说明格式,这里我们使用了一些符号约定,它们是通用的:

如:c:\path1\path2\filename.ext D:\WINNT\SYSTEM32\CALC.EXE 三.命令行的输入方法 在DOS窗口中通过输入英文命令加回车键这种方式来执行程序。 四.内部命令和外部命令 命令行程序分为内部命令和外部命令,内部命令是随https://www.doczj.com/doc/2616281056.html,装入内存的,而外部命令是一条一条单独的可执行文件。 内部命令都集中在根目录下的https://www.doczj.com/doc/2616281056.html,文件里,电脑每次启动时都会将这个文件读入内存,也就是说在电脑运行时,这些内部命令都驻留在内存中,用dir命令是看不到这些内部命令的。 外部命令都是以一个个独立的文件存放在磁盘上的,它们都是以com和exe为后缀的文件,它们并不常驻内存,只有在电脑需要时,才会被调入内存。 五.常用命令 DOS命令总共大约有一百个(包括文本编辑、查杀病毒、配置文件、批处理等),我们这里详细介绍二十个常用的DOS 命令。 先介绍一下通配符的概念。 通配符*和? * 表示一个字符串 ?只代表一个字符 注意通配符只能通配文件名或扩展名,不能全都表示。例如我们要查找以字母y开头的所有文件,可以输入以下命令:dir y*.*;如果要查找所有扩展名为exe的文件,可以用dir .exe。 ?只代表一个字符,例如我要查找第二个字母为s的所有文件,可以输入:DIR ?s*.*。 1.dir dir是英文单词directory(目录)的缩写,主要用来显示一个目录下的文件和子目录。 [功能] 显示指定磁盘、目录中的文件和子目录信息,包括文件及子目录所在磁盘的卷标、文件与子目录的名称、每个文件的大小、文件及目录建立的日期时间,以及文件子目录的个数、所占用总字节数以及磁盘上的剩余总空间等信息。

Linux常见特殊符号

Linux 常见特殊符号1,> 重定向输出符号 用法:命令 >文件名 特性:覆盖(当输入文件和输出文件是同一文件,文件内容被清空;不适合连续重定向) 典型应用:合并文件(cat a b >c);清空文件(cat /dev/null);文件打印 2,>> 重定向输出符号 用法:命令 >>文件名 特性:追加 3,2> 错误重定向输出符号 用法:命令 2>文件名 特性:覆盖 4,2>> 错误重定向输出符号 用法:命令 2>>文件名

特性:错误信息的追加 典型应用:命令 >文件名命令 2>文件名 命令 >/dev/null 2>/dev/null==命令 > /dev/null 5,|管道符号 用法:命令1 | 命令2 机制:上一个的命令输出作为下一个命令的输入 6, *匹配任意字符 7,?匹配任意一个字符 8,&后台进程符 用法:命令(程序) & 9,&& 逻辑与 用法:命令1 && 命令2 机制:如果命令1执行成功,继续执行命令2;否则不执行命令2

10,|| 逻辑或 用法:命令1 || 命令2 机制:如果命令1执行成功,不执行命令2;否则,才执行命令2 11,!逻辑非 机制:排除指定范围 12,[x-y]指定范围 13,#注释 14,""双引号 机制:把它所包含的内容作为普通字符,但‘’\ $ `` 除外 15‘’单引号 机制:把它所包含的内容作为普通字符,无例外16,``倒引号 机制:执行它所包含的内容

17,\转义字符 用法; \符号 机制:把符号的特定含义去掉,使其变成普通标点 符号 18,$变量调用符号 用法: $变量 机制:调用变量,从而得到‘变量的值’ 19,;命令分隔符 用法:命令1 ;命令2 机制;一行语句中,顺次执行各命令 20()整体执行 21,{ } 变量分离 22,<重定向输入符号 用法:命令 < 文件名

DOS下命令大全

Arp 显示和修改“地址解析协议”(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表。该命令只有在安装了 TCP/IP 协议之后才可用。 arp -a [inet_addr] [-N [if_addr] arp -d inet_addr [if_addr] arp -s inet_addr ether_addr [if_addr] 参数 -a 通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,则只显示指定计算机的 IP 和物理地址。 -g 与 -a 相同。 inet_addr 以加点的十进制标记指定 IP 地址。 -N 显示由 if_addr 指定的网络界面 ARP 项。 if_addr 指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。 -d 删除由 inet_addr 指定的项。 -s 在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。 ether_addr

指定物理地址。 Finger 在运行 Finger 服务的指定系统上显示有关用户的信息。根据远程系统输出不同的变量。该命令只有在安装了 TCP/IP 协议之后才可用。 finger [-l] [user]@computer[...] 参数 -l 以长列表格式显示信息。 user 指定要获得相关信息的用户。省略用户参数以显示指定计算机上所有用户的信息: @computer Ftp 将文件传送到正在运行 FTP 服务的远程计算机或从正在运行 FTP 服务的远程计算机传送文件(有时称作 daemon)。Ftp可以交互使用。单击“相关主题”列表中的“ftp 命令”以获得可用的“ftp”子命令描述。该命令只有在安装了 TCP/IP 协议之后才可用。Ftp 是一种服务,一旦启动,将创建在其中可以使用ftp 命令的子环境,通过键入 quit 子命令可以从子环境返回到 Windows 2000 命令提示符。当 ftp 子环境运行时,它由 ftp 命令提示符代表。 ftp [-v] [-n] [-i] [-d] [-g] [-s:filename] [-a] [-w:windowsize] [computer] 参数 -v 禁止显示远程服务器响应。 -n 禁止自动登录到初始连接。 -i

cad命令及常用符号

CAD中各种常用符号的打法 %%c 符号φ %%d 度符号 %%p ±号 %%u 下划线 %%130 Ⅰ级钢筋φ %%131 Ⅱ级钢筋φ %%132 Ⅲ级钢筋φ %%133 Ⅳ级钢筋φ %%130%%145ll%%146 冷轧带肋钢筋 %%130%%145j%%146 钢绞线符号 %%1452%%146 平方 %%1453%%146 立方 %%134 小于等于≤ %%135 大于等于≥ %%136 千分号 %%137 万分号 %%138 罗马数字Ⅺ %%139 罗马数字Ⅻ %%140 字串增大1/3 %%141 字串缩小1/2(下标开始)

%%142 字串增大1/2(下标结束) %%143 字串升高1/2 %%144 字串降低1/2 %%145 字串升高缩小1/2(上标开始) %%146 字串降低增大1/2(上标结束) %%171 双标上标开始 %%172 双标下标开始 %%173 上下标结束 %%147 对前一字符画圈 %%148 对前两字符画圈 %%149 对前三字符画圈 %%150 字串缩小1/3 %%151 Ⅰ %%152 Ⅱ %%153 Ⅲ %%154 Ⅳ %%155 Ⅴ %%156 Ⅵ %%157 Ⅶ %%158 Ⅷ %%159 Ⅸ %%160 Ⅹ

%%161 角钢 %%162 工字钢 %%163 槽钢 %%164 方钢 %%165 扁钢 %%166 卷边角钢 %%167 卷边槽钢 %%168 卷边Z型钢 %%169 钢轨 %%170 圆钢 1 三种方法在Word中输入钢筋等级符号 方法一: HPB235钢筋符号:在word中先输入"E000",然后按住ALT+X键; HRB335钢筋符号:在word中先输入"E001",然后按住ALT+X键; HRB400钢筋符号:在word中先输入"E002",然后按住ALT+X键。 方法二: 使用区位输入法(如果你的输入法栏里没有,则添加

CAD命令、特殊符号代码大全

精心整理特殊符号代码

常见的快捷命令 (一)字母类 1、对象特性 AA,*AREA(面积)DI,*DIST(距离)LI,*LIST(显示图形数据信息) 2、绘图命令: PO,*POINT(点)L,*LINE(直线) XL,*XLINE(射线)PL,*PLINE(多段线)

ML,*MLINE(多线)SPL,*SPLINE(样条曲线)POL,*POLYGON(正多边形)REC,*RECTANGLE(矩形)C,*CIRCLE(圆)A,*ARC(圆弧) DO,*DONUT(圆环)EL,*ELLIPSE(椭圆) REG,*REGION(面域)MT,*MTEXT(多行文本) T,*MTEXT(多行文本)B,*BLOCK(块定义) 3 CO,*COPY E,DEL键 TR,*TRIM 4、视窗缩放: P,*PAN(平移)Z+空格+空格,*实时缩放 Z,*局部放大Z+P,*返回上一视图 Z+E,*显示全图 5、尺寸标注:

DLI,*DIMLINEAR(直线标注)DAL,*DIMALIGNED(对齐标注) DRA,*DIMRADIUS(半径标注)DDI,*DIMDIAMETER(直径标注) DAN,*DIMANGULAR(角度标注)DCE,*DIMCENTER(中心标注) DOR,*DIMORDINATE(点标注)TOL,*TOLERANCE(标注形位公差) LE,*QLEADER(快速引出标注)DBA,*DIMBASELINE(基线标注) DCO,*DIMCONTINUE(连续标注)D,*DIMSTYLE(标注样式) 【CTRL 【CTRL S*SAVE 【CTRL 【CTRL 【CTRL 【CTRL 【CTRL 【F1】*HELP(帮助)【F2】*(文本窗口) 【F3】*OSNAP(对象捕捉)【F7】*G R IP(栅格) 【F8】*ORTHO(正交)

常见DOS命令大全和使用方法

Windows DOS窗口打开方法,开始-运行-输入CMD-回车确认即可打开。DOS常用命令大全dos命令 dos下各种常见命令索引 ▲dir ▲attrib ▲cd ▲copy ▲xcopy ▲del ▲undelete ▲deltree ▲dos=high ▲doskey ▲emm386.exe ▲fc ▲format ▲unformat ▲interlnk ▲intersvr ▲memmaker ▲memitem等 ▲mscdex ▲msd

▲prompt ▲ramdrive ▲subst ▲mem ▲"><>><<"工具 ▲move ▲append ▲call ▲defrag ▲device 一、DIR 命令的格式: dir [D:][PATH][NAME][[/A][:attrib]][/o:[sorted][/s][/b][/l][/c[h] (1)dir /a:attrib 缺省包含所有文件(系统文件.隐含文件) attrib[:][h/-h]只显示隐含文件或非隐含文件. [r/-r]只显示只读文件或非只读文件 [s/-s]只显示系统文件或非系统文件 [a/-a]只显示要归档文件或非归档文件 (2)/o[:]sorted:缺省完全按字母顺序,子目录显示在文件之前/o[n/-n]:按字母顺序或按文件名顺序/反向显示 [e/-e]:按扩展名字母顺序/反向显示 [d/-d]:按时间顺序/反向显示 [s/-s]:按大小从大到小或/反向显示

[g/-g]:按子目录先于文件或文件先于子目录 (3)/s 参数:对当前目录及其子目录中所有文件进行列表 列名:dir /s/a/o:n c:\>PRN 将c盘上的所有子目录和文件按隶属关系并根据子目录和文件字母顺序打印输出 (4)/B 参数:将只显示文件名与扩展名 (5)/L 参数:将全部用小写字母对文件或子目录进行列表 训练: dir /a 列当前目录所有文件(含隐含及系统文件) dir /ah 列隐含文件(包含子目录(隐含的) dir /a-h dir /as 列系统文件dir /a-s dir /ad 列子目录dir /a-d dir /o 按字母顺序 dir /B 只显示文件名与扩展名 二、attrib [+r|-r] [+a|-a] [+s|-s] [+h|-h] [d: ] [name] [/s] 缺省attrib name 显示文件的(文件)属性 attrib io.sys (或子目录) shr c:\ io.sys 指定为系统(s) 隐含(h) 只读(r)文件 也可以attrib *.sys 显示扩展名为sys的文件属性 参数[+r|-r] 将文件属性设置或解除只读属性 [+a|-a] 将文件属性设置或解除归档属性 [+h|-h] 将文件属性设置或解除隐含属性(尤其对子目录也起作用) /s 参数将当前及当前子目录下的所有文件均起作用

天正建筑CAD命令符号

重排轴号 CPZH 改变图中一组轴线编号,该组编号自动进行重新排序 倒排轴号 DPZH 倒排轴线编号,适用于特定方向的立剖面轴线绘制 单轴变号 DZBH 只改变图中单根轴线的编号 绘制轴网 HZZW 包括旧版本的直线轴网和弧线轴网 两点轴标 LDZB 选择起始轴与结束轴标注其中各轴号与尺寸 墙生轴网 QSZW 在已有墙中按墙基线生成定位轴线 删除轴号 SQZH 在已有轴网上删除轴号, 其余轴号自动重排 添补轴号 TBZH 在已有轴号基础上,关联增加新轴号 添加径轴 TJJZ 在已有圆弧轴网上添加新的径向轴线,并插入轴号 添加轴线 TJZX 在已有轴网基础上增加轴线,并插入轴号 绘制轴网 HZZW 包括旧版本的直线轴网和弧线轴网 逐点轴标 ZDZB 逐个选择轴线,标注不相关的多个轴号 轴线裁剪 ZXCJ 用矩形或多边形裁剪轴网的一部分 轴改线型 ZGXX 切换轴线的线型 墙体菜单 边线对齐 BXDQ 墙基线不变, 墙线偏移到过给定点 单线变墙 DXBQ 将已绘制好的单线或者轴网转换为双线表示的墙对象 倒墙角 DQJ 将转角墙按给定半径倒圆角生成弧墙或将墙角交接好 等分加墙 DFJQ 将一段墙按轴线间距等分, 垂直方向加墙延伸到给定边界 改墙厚 GQH 批量改墙厚: 墙基线不变,墙线一律改为居中 改外墙高 GWQG 修改已定义的外墙高度与底标高, 自动将内墙忽略 改外墙厚 GWQH 注意修改外墙墙厚前, 应先进行外墙识别,否则命令不会执行 绘制墙体 HZQT 连续绘制双线直墙、弧墙,包括幕墙、弧墙、矮墙、虚墙等墙类型 墙保温层 JBWC 在墙线一侧添加保温层或撤销保温层 加亮外墙 JLWQ 亮显已经识别过的外墙 矩形立面 JXLM 在立面显示状态, 将非矩形的立面部分删除, 墙面恢复矩形 净距偏移 JJPY 按墙体净距离偏移平行生成新墙体 平行生线 PXSX 在墙任意一侧, 按指定偏移距离生成平行的线或弧 墙面UCS QMUCS 临时定义一个基于所选墙面(分侧)的UCS, 在指定视口转为立面显示墙端封口 QDFK 打开和闭合墙端出头的封口线 墙体造型 QTZX 构造平面形状局部凸出的墙体,附加在墙上形成一体 识别内外 SBNW 自动识别内外墙, 适用于一般情况 修墙角 XQJ 清理互相交叠的两道墙或者更新融合同材质的墙与墙体造型 异型立面 YXLM 在立面显示状态, 将墙按给定的轮廓线切割生成非矩形的立面 指定内墙 ZDNQ 人工识别内墙, 用于内天井、局部平面等无法自动识别的情况 指定外墙 ZDWQ 人工识别外墙, 用于内天井、局部平面等无法自动识别的情况 门窗菜单 编号复位 BHFW 把用户移动过的门窗编号恢复到默认位置 带形窗 DXC 在一段或连续墙段上插入等高窗 窗棂展开 CLZK 把窗立面展开到WCS,以便进行窗棂划分 窗棂映射 CLYS 把WCS上的窗棂划分映射回立面窗 门窗套 JMCT 在门窗四周添加或删除门窗套 加装饰套 JZST 给门窗添加三维装饰门窗套线 门口线 JMKX 给门添加或删除属于门对象的门口线 门窗 MC 在墙上插入由可定制形状的门窗(弧窗、门连窗、子母门、凸窗、门洞等) 门窗表 MCB 统计本图中使用的门窗参数, 检查后生成门窗表 门窗编号 MCBH 选择门窗,可自动生成或修改已有门窗的编号 门窗检查 MCJC 显示电子表格检查当前图中已插入的门窗数据 门窗原型 MCYX 选择已有门窗作为新门窗改绘的原型,并构造门窗制作的环境

WIN7下DOS命令大全,绝对好用。

Windows7作为微软新操作系统,有哪些运行命令呢?下面我们就一起来看看吧。 1、cleanmgr: 打开磁盘清理工具 2、compmgmt.msc: 计算机管理 3、conf: 启动系统配置实用程序 4、charmap: 启动字符映射表 5、calc: 启动计算器 6、chkdsk.exe: Chkdsk磁盘检查 7、cmd.exe: CMD命令提示符 8、certmgr.msc: 证书管理实用程序 9、Clipbrd: 剪贴板查看器 10、dvdplay: DVD播放器 11、diskmgmt.msc: 磁盘管理实用程序 12、dfrg.msc: 磁盘碎片整理程序 13、devmgmt.msc: 设备管理器 14、dxdiag: 检查DirectX信息 15、dcomcnfg: 打开系统组件服务 16、explorer: 打开资源管理器 17、eventvwr: 事件查看器 18、eudcedit: 造字程序 19、fsmgmt.msc: 共享文件夹管理器 20、gpedit.msc: 组策略

21、iexpress: 工具,系统自带 22、logoff: 注销命令 23、lusrmgr.msc: 本机用户和组 24、MdSched:来启动Windows内存诊断程序 25、mstsc: 远程桌面连接 26、Msconfig.exe: 系统配置实用程序 27、mplayer2: 简易widnows media player 28、mspaint: 画图板 29、magnify: 放大镜实用程序 30、mmc: 打开控制台 31、mobsync: 同步命令 32、notepad: 打开记事本 33、nslookup: 网络管理的工具向导 34、narrator: 屏幕“讲述人” 35、netstat : an(TC)命令检查接口 36、OptionalFeatures:打开“打开或关闭Windows功能”对话框 37、osk: 打开屏幕键盘 38、perfmon.msc: 计算机性能监测程序 39、regedt32: 注册表编辑器 40、rsop.msc: 组策略结果集 41、regedit.exe: 注册表 42、services.msc: 本地服务设置

cmd命令 DOS命令之 net use命令详解

DOS命令之net use命令详细解释 net use ipipc$ " " /user:" " 建立IPC空链接 net use ipipc$ "密码" /user:"用户名" 建立IPC非空链接 net use h: ipc$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H: net use h: ipc$ 登陆后映射对方C:到本地为H: net use ipipc$ /del 删除IPC链接 net use h: /del 删除映射对方到本地的为H:的映射 net user 用户名密码/add 建立用户 net user guest /active:yes 激活guest用户 net user 查看有哪些用户 net user 帐户名查看帐户的属性 net localgroup administrators 用户名 /add 把“用户”添加到管理员中使其具有管理员权限,注意:administrator后加s用复数 net start 查看开启了哪些服务 net start 服务名开启服务;(如:net start telnet, net start schedule) net stop 服务名停止某服务 net time 目标ip 查看对方时间 net time 目标ip /set 设置本地计算机时间与“目标IP”主机的时间同步,加上参数/yes可取消确认信息 net view 查看本地局域网内开启了哪些共享

net view ip 查看对方局域网内开启了哪些共享 net config 显示系统网络设置 net logoff 断开连接的共享 net pause 服务名暂停某服务 net send ip "文本信息" 向对方发信息 net ver 局域网内正在使用的网络连接类型和信息 net share 查看本地开启的共享 net share ipc$ 开启ipc$共享 net share ipc$ /del 删除ipc$共享 net share c$ /del 删除C:共享 net user guest 12345 用guest用户登陆后用将密码改为12345 net password 密码更改系统登陆密码 netstat -a 查看开启了哪些端口,常用netstat -an netstat -n 查看端口的网络连接情况,常用netstat -an netstat -v 查看正在进行的工作 netstat -p 协议名例:netstat -p tcq/ip 查看某协议使用情况(查看tcp/ip协议使用情况) netstat -s 查看正在使用的所有协议使用情况 nbtstat -A ip 对方136到139其中一个端口开了的话,就可查看对方最近登陆的用户名(03前的为用户名)-注意:参数-A要大写tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:“-w数字”用于设置超时间隔。

常用命令及符号

5、8号基础常识 软件:一系列按照特定顺序组织的计算机数据和指令的集合{系统软件和应用软件DOS:磁盘操作系统} 人机交互方式:图形化界面GUI 命令行方式CLI 计算机语言:人与计算机沟通的方式java c++ c# Java :web应用程序的首选开发语言三种技术架构{ J2EE(大型项目)企业版J2SE标准版J2ME(安卓手机开发)小型版} 跨平台性:通过java怨言编写的应用程序在不同的系统平台上都可以运行 原理:只要在需要运行java应用程序的操作系统上,先安装一个java虚拟机(JVM java Virtual Machine)即可。由JVM来负责java程序在系统中的运行。 其他语言是靠操作系统来解析执行的而java有自己的虚拟机来解析执行 5、10 5、11 变量开辟内存空间作用域初始化用来不断存放同一类型数据的常量 -byte范围128-----+127 short-2(15)---2(15)-1 int-2(31)-----+2(31)-1 划分数据类型细致是为了节省内存空间(数据类型占得内存空间不同) 甚么时候定义变量(当操作的数据不确定的时候,就用变量来表示) 默认为double类型,定义float,小树后面要加上f,进行标示 Char类型带’’string类型带“” Char类型和int运算查Ask码 字符串数据和任何数据做运算。都没有加法含义,这个+是一个连接符。任何数据和字符串相连接,都会变成一个新的字符串。 Int a = 3;// a+=4//a=a+4;//+=:j将左右两边的和赋给左边 +=是赋值运算符,所以会有一个自动转换动作。 逻辑运算符:用于连接两个boolean类型的表达式 &(与):真真为真真假为假假假为假 | (或):真真为真真假为真假假为假 ^(异或):真真为假假假为假真假为真两边都相同,结果是flase。两边不同结果是true。&&和&的区别: &:无论左边是true还是false。右边都参与运算。简单说,就是两边都运算。 &&:当左边false时,右边不参与运算。 |和||区别同上 位运算符:其实就是对二进制的运算 -6的二进制怎莫表示?附属的二进制其实就是对应的整数,进行取反+1; 负数的二进制最高位是1 <<左移的特点:乘以2的次幂(移几位,就是几次幂局限性:只能操作二的倍数) >>右移的特点:其实就是一个除以2的次幂动作(移几位就是2的几次幂) >>>:无符号右移 >>:如果最高位为0,右移后,最高位的空位用0补。 如果最高位为1,右移后,最高位的空位用1补。 >>>:无论最高位是0是1,最高位都用0补 //三元运算符(条件表达式)?表达式1:表达式2: 特点:运行完总有一个结果。

用dos命令打开windows应用程序

开始菜单中的“运行”是通向程序的快捷途径,输入特定的命令后,即可快速的打开Windows的大部分程序,熟练的运用它,将给我们的操作带来诸多便捷。 winver 检查Windows版本 wmimgmt.msc 打开Windows管理体系结构(wmi) wupdmgr Windows更新程序 wscript Windows脚本宿主设置 write 写字板 winmsd 系统信息 wiaacmgr 扫描仪和照相机向导 winchat xp自带局域网聊天 mem.exe 显示内存使用情况 msconfig.exe 系统配置实用程序 mplayer2 简易widnows media player mspaint 画图板 mstsc 远程桌面连接 mplayer2 媒体播放机 magnify 放大镜实用程序 mmc 打开控制台 mobsync 同步命令 dxdiag 检查directx信息 drwtsn32 系统医生 devmgmt.msc 设备管理器 dfrg.msc 磁盘碎片整理程序 diskmgmt.msc 磁盘管理实用程序 dcomcnfg 打开系统组件服务 ddeshare 打开dde共享设置 dvdplay dvd播放器 netsh winsock reset net stop messenger 停止信使服务 net start messenger 开始信使服务 notepad 打开记事本 nslookup 网络管理的工具向导 ntbackup 系统备份和还原 narrator 屏幕“讲述人” ntmsmgr.msc 移动存储管理器 ntmsoprq.msc 移动存储管理员操作请求 netstat -an (tc)命令检查接口

电脑DOS命令大全详解

DOS命令大全 一)MD——建立子目录 1.功能:创建新的子目录 2.类型:内部命令 3.格式:MD[盘符:][路径名]〈子目录名〉 4.使用说明: (1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器; (2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。 例:(1)在C盘的根目录下创建名为FOX的子目录;(2)在FOX子目录下再创建USER 子目录。 C:、>MD FOX (在当前驱动器C盘下创建子目录FOX) C:、>MD FOX 、USER (在FOX 子目录下再创建USER子目录) (二)CD——改变当前目录 1.功能:显示当前目录 2.类型:内部命令 3.格式:CD[盘符:][路径名][子目录名] 4.使用说明: (1)如果省略路径和子目录名则显示当前目录; (2)如采用“CD、”格式,则退回到根目录; (3)如采用“CD.。”格式则退回到上一级目录。 例:(1)进入到USER子目录;(2)从USER子目录退回到子目录;(3)返回到根目录。 C:、>CD FOX 、USER(进入FOX子目录下的USER子目录) C:、FOX、USER>CD.。(退回上一级根目录) C:、FOX>CD、(返回到根目录) C:、> (三)RD——删除子目录命令 1.功能:从指定的磁盘删除了目录。 2.类型:内部命令 3.格式:RD[盘符:][路径名][子目录名] 4.使用说明: (1)子目录在删除前必须是空的,也就是说需要先进入该子目录,使用DEL(删除文件的命令)将其子目录下的文件删空,然后再退回到上一级目录,用RD命令删除该了目录本身; (2)不能删除根目录和当前目录。 例:要求把C盘FOX子目录下的USER子目录删除,操作如下: 第一步:先将USER子目录下的文件删空; C、>DEL C:、FOX、USER、*。* 第二步,删除USER子目录。 C、>RD C:、FOX、USER (四)DIR——显示磁盘目录命令 1.功能:显示磁盘目录的内容。 2.类型:内部命令 3.格式:DIR [盘符][路径]

windows运行命令符号大全

开始-运行命令 winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr--------windows更新程序 wscript--------windows脚本宿主设置 write----------写字板 winmsd---------系统信息 wiaacmgr-------扫描仪和照相机向导 winchat--------XP自带局域网聊天 mem.exe--------显示内存使用情况 Msconfig.exe---系统配置实用程序 mplayer2-------简易widnows media player mspaint--------画图板 mstsc----------远程桌面连接 mplayer2-------媒体播放机 magnify--------放大镜实用程序 mmc------------打开控制台 mobsync--------同步命令 dxdiag---------检查DirectX信息 drwtsn32------ 系统医生 devmgmt.msc--- 设备管理器 dfrg.msc-------磁盘碎片整理程序 diskmgmt.msc---磁盘管理实用程序 dcomcnfg-------打开系统组件服务 ddeshare-------打开DDE共享设置 dvdplay--------DVD播放器 net stop messenger-----停止信使服务 net start messenger----开始信使服务 notepad--------打开记事本 nslookup-------网络管理的工具向导 ntbackup-------系统备份和还原 narrator-------屏幕“讲述人” ntmsmgr.msc----移动存储管理器 ntmsoprq.msc---移动存储管理员C作请求 netstat -an----(TC)命令检查接口 syncapp--------创建一个公文包 sysedit--------系统配置编辑器 sigverif-------文件签名验证程序 sndrec32-------录音机 shrpubw--------创建共享文件夹 secpol.msc-----本地安全策略

系统全部的命令符号

winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr--------windows更新程序 wscript--------windows脚本宿主设置 write----------写字板 winmsd---------系统信息 wiaacmgr-------扫描仪和照相机向导 winchat--------XP自带局域网聊天 mem.exe--------显示内存使用情况 Msconfig.exe---系统配置实用程序 mplayer2-------简易widnows media player mspaint--------画图板 mstsc----------远程桌面连接 mplayer2-------媒体播放机 magnify--------放大镜实用程序 mmc------------打开控制台 mobsync--------同步命令 dxdiag---------检查DirectX信息 drwtsn32------ 系统医生 devmgmt.msc--- 设备管理器 dfrg.msc-------磁盘碎片整理程序 diskmgmt.msc---磁盘管理实用程序 dcomcnfg-------打开系统组件服务 ddeshare-------打开DDE共享设置 dvdplay--------DVD播放器 net stop messenger-----停止信使服务 net start messenger----开始信使服务 notepad--------打开记事本 nslookup-------网络管理的工具向导 ntbackup-------系统备份和还原 narrator-------屏幕“讲述人” ntmsmgr.msc----移动存储管理器 ntmsoprq.msc---移动存储管理员C作请求 netstat -an----(TC)命令检查接口 syncapp--------创建一个公文包 sysedit--------系统配置编辑器 sigverif-------文件签名验证程序 sndrec32-------录音机

电脑系统(DOS命令大全

若电脑虽然有问题但还能进入Windows, 1.请依次点击“开始→程序→ MS-DOS方式”,你还可以点击“开始→运行”,在打开的对话框里输入“command”(不带引号,下同)。若你的系统是Windows XP/2000,则输入“cmd”,同样可以进入DOS。 2.对于Windows 98系统,还可以点击“开始→关闭系统”,在出现的对话框中选择“重新启动计算机并切换到MS-DOS环境”,即可进入DOS。 3.在开机通过自检后,屏幕出现“Starting Windows 98…”的字样时,立即按下“F8”键,接着选择“Safe Mode Command Prompt Only”或“Command Prompt Only”,即可进入安全模式DOS或纯DOS。 4.系统崩溃了,重新启动计算机,按住Ctrl键,在出现的屏幕信息中选择“Safe Mode Command Prompt Only”或“Command Prompt Only”,即可进入安全模式DOS或纯DOS。 5.若无法进入Windows,重新启动计算机,进入CMOS,将BIOS中的第一启动顺序(1st Boot Device)改成软驱(Floppy),保存后插入系统盘即可。 DOS命令大全!!常用的有哪些呢? DOS:disk operate system,磁盘操作系统,DOS命令又分内部命令和外部命令。 内部命令又称为驻机命令,它是随着DOS系统的启动同时被加载到内存里且长驻内存。 也就是说,只要启动了DOS系统,我们就可以使用内部命令。 外部命令是储存在磁盘上的可执行文件,执行这些外部命令需要从磁盘将其文件调入内存,因此,外部命令只有该文件存在时才能使用。带有.COM、.EXE、.BAT等扩展名的文件都可看成是外部命令。 常用的内部命令有MD、CD、RD、DIR、PATH、COPY、TYPE、EDIT、REN、DEL、CLS、VER、DATE、TIME、PROMPT。 常用的外部命令有DELTREE、FORMA T、DISKCOPY、LABEL、VOL、SYS、XCOPY、FC、ATTRIB、MEM、TREE。 常用的内部命令详解 1.MD——建立子目录 功能:创建新的子目录 类型:内部命令ü 格式:MD[盘符:][路径名]〈子目录名〉 FOR 1: C:\>md y /*---建立y子目录---*/ 2.CD——改变当前目录 功能:显示当前目录ü 类型:内部命令ü 格式:CD[盘符:][路径名][子目录名] 说明:CD命令不能改变当前所在的盘,CD..退回到上一级目录,CD\表示返回到当前盘的目录下,CD无参数时显示当前目录名。 FOR 2: C:\>cd y /*---显示当前目录y---*/ 3.RD——删除子目录命令 功能:从指定的磁盘删除了目录。

CAD命令总结及特殊符号

CAD快捷键 L,*LINE直线 ML,*MLINE多线(创建多条平行线) PL,*PLINE多段线 PE,*PEDIT编辑多段线 SPL,*SPLINE样条曲线 SPE,*SPLINEDIT编辑样条曲线 XL,*XLINE构造线(创建无限长的线) A,*ARC圆弧 C,*CIRCLE圆 DO,*DONUT圆环 EL,*ELLIPSE椭圆 PO,*POINT点 DCE,*DIMCENTER中心标记 POL,*POLYGON正多边形 REC,*RECTANG矩形 REG,*REGION面域 H,*BHATCH图案填充 BH,*BHATCH图案填充 -H,*HATCH HE,*HATCHEDIT图案填充...(修改一个图案或渐变填充)SO,*SOLID二维填充(创建实体填充的三角形和四边形)*revcloud修订云线 *ellipse椭圆弧 DI,*DIST距离 ME,*MEASURE定距等分 DIV,*DIVIDE定数等分 DT,*TEXT单行文字 T,*MTEXT多行文字 -T,*-MTEXT多行文字(命令行输入) MT,*MTEXT多行文字 ED,*DDEDIT编辑文字、标注文字、属性定义和特征控制框ST,*STYLE文字样式 B,*BLOCK创建块... -B,*-BLOCK创建块...(命令行输入) I,*INSERT插入块 -I,*-INSERT插入块(命令行输入) W,*WBLOCK“写块”对话框(将对象或块写入新图形文件)

-W,*-WBLOCK写块(命令行输入) -------------------------------------------------------------------------------- AR,*ARRAY阵列 -AR,*-ARRAY阵列(命令行输入) BR,*BREAK打断 CHA,*CHAMFER倒角 CO,*COPY复制对象 CP,*COPY复制对象 E,*ERASE删除 EX,*EXTEND延伸 F,*FILLET圆角 M,*MOVE移动 MI,*MIRROR镜像 LEN,*LENGTHEN拉长(修改对象的长度和圆弧的包含角)O,*OFFSET偏移 RO,*ROTATE旋转(绕基点移动对象) S,*STRETCH拉伸 SC,*SCALE缩放 TR,*TRIM修剪 *EXPLODE分解 DAL,*DIMALIGNED对齐标注 DAN,*DIMANGULAR角度标注 DBA,*DIMBASELINE基线标注 DCO,*DIMCONTINUE连续标注 DDI,*DIMDIAMETER直径标注 DED,*DIMEDIT编辑标注 DLI,*DIMLINEAR线性标注 DOR,*DIMORDINATE坐标标注 DRA,*DIMRADIUS半径标注 LE,*QLEADER快速引线 D,*DIMSTYLE标注样式管理器 DST,*DIMSTYLE标注样式管理器 STA,*STANDARDS标准配置(CAD标准) DRE,*DIMREASSOCIATE重新关联标注 DDA,*DIMDISASSOCIATE删除选定择标注的关联性 LA,*LAYER图层特性管理器

相关主题
文本预览
相关文档 最新文档