1.1. 如何通信
Send/Receive messages thru the message Queue. #define OslMsgSendExtQueue msg_send_ext_queue #define OslReceiveMsgExtQ receive_msg_ext_q SetProtocolEventHandler(FuncCB, msg_id);
1.2. 通信数据
typedef struct ilm_struct { oslModuleType oslSrcId; // Source module ID. oslModuleType oslDestId; // Destination module ID. oslMsgType oslSapId; // service access point. oslMsgType oslMsgId; // message name ID. oslParaType *oslDataPtr; //local parameter buffer oslPeerParaPtr *oslPeerBuffPtr; //peer buffer pointer } ilm_struct;
1.3. 如何从MMI Queue中侦听消息
OslReadCircularQ(&Message); OslReceiveMsgExtQ(mmi_qid, &mmi_message);
1.4. 如何在MMI 队列中写入消息
当NVRAM接收到其他消息时:
OslWriteCircularQ(&ilm_ptr);
1.5. 如何从L4C接听消息
注册一个消息回调函数
SetProtocolEventHandler(FuncCB, msg_id);
1.6. 如何向L4C 发送消息
2. 构建一个本地参数指针
3. 将请求数据填充进本地参数指针中。
4. 给结构体ilm_struct赋值。
5. 向L4C发送消息。
消息信息 = 头信息 + 数据信息
Local parameter Header info: #define LOCAL_PARA_HDR \ kal_uint8 ref_count; \ kal_uint16 msg_len; peer buffer parameter Header info : #define PEER_BUFF_HDR \ kal_uint16 pdu_len; \ kal_uint8 ref_count; \ kal_uint8 pb_resvered; \ kal_uint16 free_header_space; \ kal_uint16 free_tail_space;
2.7. 本地参数:(local parameter)
Header info + Data info:
例如:
typedef struct { LOCAL_PARA_HDR kal_uint8 volume_type; kal_uint8 volume_level; } mmi_eq_set_volume_req_struct;
2.8. 如何创建本地参数:(动态分配内存)
OslConstructDataPtr(sizeof(mmi_at_alarm_query_res_req_struct);
2.9. 何时释放本地参数
当L4接收到消息并处理完成后,会自动释放参数。
OslFreeDataPtr(sizeof(mmi_at_alarm_query_res_req_struct); Peer buffer parameter: Header info + Data info Ex: typedef struct { PEER_BUFF_HDR void *ptr; } mmi_example;
以root帐户登录,
创建新用户:
运行:$ sudo adduser tete
就会自动显示以下操作内容
正在添加用户"tete"...
正在添加新组"tete" (1002)...
正在添加新用户"tete" (1002) 到组"tete"...
创建主目录"/home/tete"...
正在从"/etc/skel"复制文件...
输入新的 UNIX 口令:
重新输入新的 UNIX 口令:
passwd:已成功更新密码
Changing the user information for tete
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
这个信息是否正确? [Y/n] y
输入“y”后按回车就OK了!
删除用户:
语法:user del [-r] [要删除的用户的名称]
例如:[root@localhost ~]user del -r tete
修改用户密码:
该命令的一般格式为: passwd [用户名] 其中用户名为需要修改口令的用户名。只有超级用户可以使用“passwd 用户名”修改其他用户的口令,普通用户只能用不带参数的passwd命令修改自己的口令。
该命令的使用方法如下:
输入
passwd< Enter>;
在(current) UNIX passwd:下输入当前的口令
在new password:提示下输入新的口令(在屏幕上看不到这个口令):
系统提示再次输入这个新口令。
输入正确后,这个新口令被加密并放入/etc/shdow文件。选取一个不易被破译的口令是很重要的。
选取口令应遵守如下规则:
口令应该至少有六位(最好是八位)字符;
口令应该是大小写字母、标点符号和数字混杂的。
超级用户修改其他用户(xxq)的口令的过程如下,
# passwd root
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully
#
[附:用“su”命令来更换用户,如:$su demo]
http://apps.hi.baidu.com/share/detail/24463656
我也是经常在各个地方潜水。前几天提问候。发现有个cmd100的。
不管是不是什么水军的。过去看了。。确实有自己的特点。学习android。
上传google market,组团对。svn项目托管。一条龙。哇咔咔。。爽。。
特此mark一下