當前位置:首頁 » 密碼管理 » wince加密

wince加密

發布時間: 2022-04-25 16:23:46

1. 怎麼使用securecrt燒寫天嵌的wince系統

SecureCRT是一款支持SSH(SSH1和SSH2)的終端模擬程序,簡單地說是Windows下登錄UNIX或linux伺服器主機的軟體。
SecureCRT支持SSH,同時支持Telnet和rlogin協議。SecureCRT是一款用於連接運行包括Windows、UNIX和VMS的理想工具。通過使用內含的VCP命令行程序可以進行加密文件的傳輸。有流行CRTTelnet客戶機的所有特點,包括:自動注冊、對不同主機保持不同的特性、列印功能、顏色設置、可變屏幕尺寸、用戶定義的鍵點陣圖和優良的VT100,VT102,VT220和ANSI競爭.能從命令行中運行或從瀏覽器中運行.其它特點包括文本手稿、易於使用的工具條、用戶的鍵點陣圖編輯器、可定製的ANSI顏色等.SecureCRT的SSH協議支持DES,3DES和RC4密碼和密碼與RSA鑒別。
Alt + Enter -- 全屏
Alt + B --打開新的連接
Alt + 1/2/3/4/5.../9 -- 切換到第1/2/3/4/5.../9個標簽
Ctrl + A -- 游標移至行首。
Ctrl + B -- 游標前移1個字元
Ctrl + D -- 刪除游標後1個字元
Ctrl + E -- 游標移至行末
Ctrl + F -- 游標後移1個字元
Ctrl + H -- 刪除游標前的1個字元
Ctrl + J -- 回車
Ctrl + k -- 刪除當前游標至行末的字元
Ctrl + P -- 顯示前一條命令
Ctrl + M -- 回車
Ctrl + N -- 下一條命令
Ctrl + T -- 交換游標前最後兩個字元(思科路由器可用)
Ctrl + U -- 清除當前行和緩存的輸入
Ctrl + V -- 輸入ctrl字元
Ctrl + W -- 刪除當前游標至行首的字元
Tab --自動補全命令

2. 如何加密 Windows CE系統

椋‥XE、DLL、OCX)都能夠正常運行,存放在永久存儲器上的模塊在開發者數字簽名後也能夠運行,而沒有數字簽名的模塊則不能運行。讀者有興趣可以查看CE幫助文檔中標題為《Create a Trusted Environment》的文章。言簡意賅,下面就開始講解如何實現可信任環境。
1、得到鑰容器
得到鑰容器(key container)的方法是調用Win32 Security API。先得到CSP(cryptographic service provider),再得到key container。默認的CSP為Microsoft Base Cryptographic Provider。默認的key container以當前登錄用戶名為名稱。如果你熟悉加密方面知識的話可以另外調用其他CSP。在此我們以Microsoft Base Cryptographic Provider默認的key container為signfile需要的鑰容器。
2、對模塊簽名
signfile.exe 用於對模塊簽名。這個文件在CE安裝目錄里(包括源碼)可以找到,下面是參數說明:
-o 輸出簽名數據到指定的文件
-k 指定CAPI 鑰容器
-p 輸出公鑰到指定文件(內容為一個C語言數組)
-s 嵌入指定字元
-a 在指定的PE格式的文件中附加簽名數據
-f 要簽名的文件(EXE、DLL)
假如我們要將myproc.exe簽名,假設我們以fulinlin名字在桌面Windows上登錄,那麼在命令行輸入如下命令:
signfile -fmyproc.exe -a -kfulinlin -pmyproc.txt
上面參數告訴signfile.exe 用鑰容器fulinlin中的私鑰將文件myproc.exe簽名,並且將公鑰存放到名為myproc.txt的文件中。加密具體過程很復雜,我對加密不了解,只能理解到這么低級的程度。如果說錯了希望讀者指教。
3、編寫檢驗函數
編寫檢驗函數前請參考CE的幫助文檔中標題為《Verifying a Signature》的文章。我們只需要把這篇文章中最下面的代碼復制到CE安裝目錄下定義OEMInit函數的.c文件中。因為我的調試平台屬於X86系列,所以定義OEMInit函數是在cfwpc.c文件中。為了使讀者能夠簡單弄懂這個機制,我把相關函數、變數做一個簡單說明,如下:
////初始化公鑰函數[NextPage]extern BOOL InitPubKey(const BYTE *KeyBlob, DWORD cbKeyBlob);
/////這兩個指針是在loader.c文件中定義的,loader.c實現載入器的功能,載入模塊(EXE、DLL)。這兩個指針指向兩個函數,pOEMLoadInit
////指向的函數的功能是:每當載入一個模塊的時候這個函數決定是否需要驗證。TRUE表示需要,FALSE不需要。pOEMLoadMole指向的
////函數的功能是:驗證將要載入的模塊是否具有合法的簽名。有三個返回值,具體請看幫助文檔。
extern OEMLoadInit_t pOEMLoadInit; extern OEMLoadMole_t pOEMLoadMole;
/////以"CertifyMole"開頭的函數為系統自帶的驗證函數。有了這三個函數你就不用去了解加密知識了。
extern BOOL CertifyMoleInit(void); extern BOOL CertifyMole(PBYTE pbBlock, DWORD cbBlock);extern BOOL CertifyMoleFinal(PBYTE *ppbSignData, PDWORD pcbSignData);
注意公鑰數據g_bSignPublicKeyBlob,要把signfile導出的公鑰覆蓋代碼中原有的g_bSignPublicKeyBlob 。
[NextPage]4、編譯並測試用PB打開一個內核工程,進入命令行狀態(菜單open build release directory)。鍵入"build -c"和"sysgen i486oal",因為cfwpc.c是i486oal.lib的一部分。之後重新編譯內核。
測試方法是把任何一個CE下運行的EXE復制一份,一份不改變,另一份由signfile簽名。然後把這兩個文件復制到永久存儲器上運行。測試結果簽名的能運行,而不簽名的不能運行(彈出對話框顯示"找不到XXX(或它的某一個組件)。

3. 如何在wince中建立PPPoE撥號

1.在wince中添加支持的組件
需要添加2個組件,分別是Dial Up Networking (RAS/PPP)和Point-to-Point Protocol over Ethernet (PPPoE),路徑如下:
[Core OS]
|——[Communication Services and Networking]
|——[Networking - Wide Area Network (WAN)]
|——Dial Up Networking (RAS/PPP)
|——Point-to-Point Protocol over Ethernet (PPPoE)

2.使用注冊表創建撥號
在platform.reg中添加下面注冊表信息,下面「PPPoE」這個名字可以根據自己需要直接修改。
[HKEY_CURRENT_USER/Comm/RasBook/"PPPoE"]
"Entry"=hex:/
00,00,48,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,1c,1a,0f,00,00,/
00,00,00,44,13,0f,00,00,00,00,00,04,00,00,00,60,00,00,00,10,00,00,00,6f,00,/
00,00,1c,d9,cb,02,10,1a,0f,00,ff,ff,00,00,00,00,ff,ff,00,00,00,00,0c,f0,04,/
1e,fc,ef,04,1e,e0,b1,32,08,ff,ff,00,00,08,00,00,00,cc,cc,00,00,00,00,00,00,/
00,00,00,00,01,00,00,00,01,00,00,00,c8,73,ed,01,00,00,00,00,00,00,00,00,01,/
00,00,00,00,00,ff,00,00,00,00,00,00,00,00,00,70,19,0f,00,dc,b1,32,08,00,00,/
00,00,01,00,00,00,70,19,0f,00,dc,b1,32,08,00,00,00,00,6c,fb,cb,02,01,00,00,/
00,00,00,ff,00,dc,b1,32,08,00,00,00,00,80,eb,04,1e,70,19,0f,00,01,00,00,00,/
59,01,00,00,67,00,00,00,00,00,00,00,00,00,00,00,02,00,00,00,2c,24,cb,02,58,/
01,00,00,00,00,00,00,00,02,00,00,e0,b1,32,08,01,00,00,00,64,16,cc,02,f0,b1,/
32,08,10,1a,0f,00,03,00,00,00,05,00,00,00,64,b8,31,08,43,00,00,00,90,0a,00,/
00,00,00,00,00,70,19,0f,00,80,15,00,00,df,fd,ff,ff,00,00,00,00,00,00,00,00,/
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,01,00,00,00,50,00,50,00,50,/
00,6f,00,45,00,00,00,01,00,00,00,d8,5b,01,00,7a,3d,05,1e,7a,3d,05,1e,0c,00,/
00,00,68,23,50,00,50,00,50,00,6f,00,45,00,20,00,4c,00,69,00,6e,00,65,00,20,/
00,30,00,00,00,a8,eb,04,1e,00,00,00,00,ff,ff,00,00,c8,eb,04,1e,07,0b,00,00,/
44,00,00,00,80,82,00,00,00,02,00,00,00,00,00,00,48,01,00,00,21,00,00,00,5a,/
01,00,00,68,00,00,00,04,00,00,00,9c,ed,04,1e,9c,ed,04,1e,00,00,00,00,a8,00,/
00,00,48,01,00,00,ef,00,00,00,72,9c,df,0f,44,ec,04,1e,3c,ec,04,1e,4c,88,f7,/
03,34,ba,f8,03,0c,79,08,00,00,00,00,00,89,01,00,00,00,00,00,00,7a,3d,05,1e,/
00,00,00,00,e0,07,02,00,ef,00,00,00,12,ff,ff,ff,48,01,00,00,00,00,00,ff,7a,/
3d,05,1e,00,00,00,00,72,9c,df,0f,00,00,00,00,0c,79,08,00,00,00,00,00,b0,a1,/
01,7c,59,ff,ff,ff,b9,fe,ff,ff,0c,00,00,00,12,ff,ff,ff,89,01,00,00,b0,a1,01,/
7c,00,00,00,00,60,7d,01,7c,00,00,00,00,7a,3d,05,1e,00,00,00,00,60,7d,01,7c,/
01,00,00,00,a4,c3,01,00,89,01,00,00,00,00,01,7c,89,01,00,00,2c,c4,01,00,7a,/
3d,05,1e,00,00,00,00,00,00,04,1e,00,00,00,00,00,00,00,00,00,00,00,00,00,00,/
00,00,00,00,00,00,94,52,f8,03,d8,43,05,00,00,00,00,00,00,00,00,00,50,9c,01,/
7c,0a,00,00,00,00,00,00,00,00,00,00,00,89,01,00,00,b0,a1,01,7c,00,00,00,00,/
00,00,00,00,00,00,00,00,14,5c,01,00,0c,00,00,00,b4,c6,01,00,00,00,00,00,00,/
00,00,00,0a,00,00,00,0a,00,00,00,00,c8,ff,ff,00,c8,ff,ff,7a,3d,05,1e,81,00,/
00,00,b0,b7,33,08,34,ed,04,1e,88,03,08,00,b0,a1,01,7c,89,01,00,00,00,00,00,/
00,7a,3d,05,1e,b0,b7,33,08,0d,00,00,00,81,00,00,00,7a,3d,05,1e,7a,3d,05,1e,/
d0,a0,01,7c,2c,11,08,00,00,00,00,00,0a,00,00,00,00,00,00,00,01,00,00,00,80,/
a3,01,7c,00,00,00,00,1a,36,05,1e,00,00,00,00,00,00,00,00,bc,5a,07,00,1a,36,/
05,1e,00,be,33,08,0d,00,00,00,81,00,00,00,1a,36,05,1e,80,a3,01,7c,6c,e8,07,/
00,98,ed,04,1e,00,00,00,00,0d,00,00,00,0d,00,00,00,54,02,02,00,e8,ed,04,1e,/
ec,ed,04,1e,f0,e5,07,00,0d,00,00,00,00,00,00,00,0d,00,00,00,00,00,00,00,1a,/
36,05,1e,00,00,00,00,e0,07,02,00,ec,ed,04,1e,e4,ed,04,1e,00,00,00,00,00,00,/
00,00,1a,36,05,1e,00,00,00,00,72,9c,df,0f,00,00,00,00,f0,e5,07,00,00,00,00,/
00,80,a3,01,7c,1a,36,05,1e,48,10,08,00,00,00,00,00,d0,a0,01,7c,0d,00,00,00,/
80,a3,01,7c,81,00,00,00,60,7d,01,7c,00,00,00,00,1a,36,05,1e,00,00,00,00,60,/
7d,01,7c,01,00,00,00,00,00,00,00,00,00,00,1e,90,ef,fb,8f,0f,00,00,00,00,00,/
00,00,f8,0c,bf,8f,80,61,a2,8d,20,dc,a8,8f,90,ef,fb,8f,0f,00,00,00,38,fe,00,/
f0,a0,ee,04,1e,a8,7a,24,8c,0f,00,00,00,00,00,00,00,c4,b3,00,f0,64,f0,04,1e,/
4e,00,00,00,00,00,00,00,00,00,00,00,50,9c,01,7c,54,ef,04,1e,ec,4e,24,8c,f1,/
ec,ff,ff,00,00,00,00,00,00,00,00
或者手動創建也可以,手動設置說明如下:
新建撥號,在安全設置中
使用數據加密——不能選
使用可擴展驗證協議——不能選
未加密的密碼(PAP)——必選
質詢握手——無所謂
Microsoft CHAP——無所謂
Microsoft CHAP v2——無所謂
預覽用戶名和密碼——根據自己的情況,如果用API寫代碼撥號不顯示撥號對話框的就不選,如果要顯示請選上。編程建議不選,代碼比較容易控制。
PPPoE的認證有PAP和CHAP,不過我在wince和在MODEM上實驗都必須採用PAP認證才能連接上。

提示:如果撥號等待比較久後見到「遠程集中器無響應」的提示,那麼好好看看上面的設置吧,多數是前2項有被選上的。

3.撥號代碼
主要採用RasDial,RasHangUp等函數控制。具體看下面的參考代碼。

//h文件
#if !defined _RAS_PPP_CTRL_H_
#define _RAS_PPP_CTRL_H_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "ras.h"
class CRasCtrl
{
private:
LPVOID m_MsgHandle;
HRASCONN m_hRasConn;
//BOOL bConnect;
//CString m_UserName;
//CString m_PassWord;
CString m_EntryName;
public:
CRasCtrl();
virtual ~CRasCtrl();
//撥號
bool DialUp(CString UserName,CString Password);
//掛斷
bool HangUp();
//設置處理方式
void SetHandle(LPVOID _handle);
//通過獲取WM_RASDIALEVENT消息,判斷撥號狀態
//static CString GetState(unsigned int message);
};
#endif

//cpp文件
#include "stdafx.h"
#include "RasCtrl.h"
#include "ras.h"
#include "Raserror.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CRasCtrl::CRasCtrl()
{
m_hRasConn =NULL;
//bConnect =false;
m_EntryName=L"PPPoE";//建立撥號的名字,保持一致
}
CRasCtrl::~CRasCtrl()
{
HangUp();
}
bool CRasCtrl::DialUp(CString UserName,CString Password)
{
RASDIALPARAMS rdParams; //撥號連接的信息
ZeroMemory(&rdParams, sizeof(RASDIALPARAMS));
rdParams.dwSize = sizeof(RASDIALPARAMS);
//HangUp();
//Sleep(100);
//RasSetEntryDialParams(NULL,&rdParams,true);
//RasGetEntryProperties();
wcscpy(rdParams.szEntryName, m_EntryName);
wcscpy(rdParams.szUserName, UserName);
wcscpy(rdParams.szPassword, Password);
//lstrcpy(rdParams.szPhoneNumber, _T(""));
//lstrcpy(rdParams.szDomain, _T(""));
m_hRasConn = NULL;
DWORD dwRet = ::RasDial(NULL, NULL, &rdParams, 0xFFFFFFFF, m_MsgHandle , &m_hRasConn); //如果函數成功,則返回0
//也可以RasHangUp(m_hRasConn);掛斷,不過我曾經試過撥號成功m_hRasConn為NULL的情況,一時不清除怎麼回事,所以把掛斷函數改了。
//RasDial函數的使用要小心一點跟windows平台有些差異。
//DWORD iRet = GetLastError();
if (dwRet)
{
//bConnect = false;
return false;
}
//bConnect = true;
return true;
}
bool CRasCtrl::HangUp()
{
int index; // An integer index
DWORD dwError, // Error code from a function call
dwRasConnSize, // Size of RasConn in bytes
dwNumConnections; // Number of connections found
RASCONN RasConn[20]; // Buffer for connection state data
// Assume the maximum number of entries is 20.
// Assume no more than 20 connections.
RasConn[0].dwSize = sizeof (RASCONN);
dwRasConnSize = 20 * sizeof (RASCONN);
// Find all connections.
if (dwError = RasEnumConnections (RasConn, &dwRasConnSize, &dwNumConnections))
{
return false;
}
// If there are no connections, return zero.
if (!dwNumConnections)
{
return false;
}
// Terminate all of the remote access connections.
for (index = 0; index < (int)dwNumConnections; ++index)
{
//這樣做主要是不想關掉usb連接,因為通過這種方法得到的連接中包括了USB同步的連接。
if (wcsstr(RasConn[index].szEntryName,_T("PPPoE"))!=NULL)
{
if (dwError = RasHangUp (RasConn[index].hrasconn))
{
return false;
}
}
}
return TRUE;
}
// 傳遞接收消息的窗體句柄進來,這樣窗體才能接收到WM_RASDIALEVENT消息。
// wParam的值有RASCS_Connected,RASCS_Disconnected等,具體查看msdn
// wince不支持其他方式。
void CRasCtrl::SetHandle(LPVOID _handle)
{
m_MsgHandle = _handle;
}
/*
這個用於解析PPPoE返回的消息的
CString CRasCtrl::GetState(unsigned int message)
{
CString str;
switch(message)
{
... ... ...
case RASCS_Connected:
str= LoadStringEx(IDS_LINKED);
break;
case RASCS_Disconnected:
str= LoadStringEx(IDS_UNLINKED);
break;
}
return str;
}
*/
4.禁止自動撥號。

在platform.reg中添加下面注冊表信息
[HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/Windows/CurrentVersion/Internet Settings/LAN]
"AutoConnect"=dword:0

注意:如果進行PPPoE 撥號,並用瀏覽器登陸網頁,則網卡的默認網關和DNS、WIS 項都應該設置為0.0.0.0。不然雖然撥號成功,但是會發現無法瀏覽網頁。

4. WINCE5.0 如何設置WIFI

WIFI是不用設置的,只需要打開 然後搜索 搜索到WIFI信號後 鏈接就可以了 加密的需要輸入密碼 跟電腦的無線路由的WIFI是一樣的

5. WinCE下SQLite資料庫如何加密,還有WinCE下對話框如何顯示流暢問題!

多表查詢應該比較流暢,

6. 在移植了相同WINCE 軟體的兩個不同的硬體系統中,如何保證應用軟體的通用性

請問你指的軟體是,上層應用的嗎?如果是的話,基本上是通用的,只是有些應用和內核是通過認證來實現匹配的,就是說的加密。另外一個,要顯示的話就是圖片的解析度的問題。一般WINCE上層應用都是用貼圖來完成的。

7. wince的前景怎麼樣

搞嵌入式開發的人有兩類:一類是學電子工程、通信工程等偏硬體專業出身的人,他們主要是搞硬體設計,有時要開發一些與硬體關系最密切的最底層軟體,如BootLoader、 Board Support Package(像PC的BIOS一樣,往下驅動硬體,往上支持操作系統),最初級的硬體驅動程序等。他們的優勢是對硬體原理非常清楚,不足是他們更擅長定義各種硬體介面,但對復雜軟體系統往往力不從心(例如嵌入式操作系統原理和復雜應用軟體等)。另一類是學軟體、計算機專業出身的人,主要從事嵌入式操作系統和應用軟體的開發。如果我們學軟體的人對硬體原理和介面有較好的掌握,我們完全也可寫BSP和硬體驅動程序。嵌入式硬體設計完後,各種功能就全靠軟體來實現了,嵌入式設備的增值很大程度上取決於嵌入式軟體,這佔了嵌入式系統的最主要工作(目前有很多公司將硬體設計包給了專門的硬體公司,稍復雜的硬體都交給台灣或國外公司設計,國內的硬體設計力量很弱,很多嵌入式公司自己只負責開發軟體,因為公司都知道,嵌入式產品的差異很大程度在軟體上,在軟體方面是最有"花頭"可做的),所以我們搞軟體的人完全不用擔心我們在嵌入式市場上的用武之地,越是智能設備越是復雜系統,軟體越起關鍵作用,而且這是目前的趨勢。
從事嵌入式軟體開發的好處是:
(1) 目前國內外這方面的人都很稀缺。一方面,是因為這一領域入門門檻較高,不僅要懂較底層軟體(例如操作系統級、驅動程序級軟體),對軟體專業水平要求較高(嵌入式系統對軟體設計的時間和空間效率要求較高),而且必須懂得硬體的工作原理,所以非專業IT人員很難切入這一領域;另一方面,是因為這一領域較新,目前發展太快,很多軟硬體技術出現時間不長或正在出現(如ARM處理器、嵌入式操作系統、MPEG技術、無線通信協議等),掌握這些新技術的人當然很難找。嵌入式人才稀缺,身價自然就高,越有經驗價格就越高。其實嵌入式人才稀少,根本原因可能是大多數人無條件接觸,這需要相應的嵌入式開發板和軟體,另外需要有經驗的人進行指導開發流程。
(2) 與企業計算等應用軟體不同,嵌入式領域人才的工作強度通常低一些(但收入不低)。搞企業應用軟體的IT企業,這個用戶的系統搞完了,又得去搞下一個用戶的,而且每個用戶的需求和完成時間都得按客戶要求改變,往往疲於奔命,重復勞動。相比而言,搞嵌入式系統的公司,都有自己的產品計劃,按自己的節奏行事。所開發的產品通常是通用的,不會因客戶的不同而修改。一個產品型號開發完了,往往有較長一段空閑時間(或只是對軟體進行一些小修補),有時間進行充電和休整。另外,從事嵌入式軟體的每個人工作范圍相對狹窄,所涉及的專業技術范圍就是那些(ARM、RTOS、MPEG、802.11等),時間長了這些東西會越搞越有經驗,賣賣老本,幾句指導也夠讓那些初入道者琢磨半年的。若搞應用軟體,可能下一個客戶要換成一個完全不同的軟體開發平台,那就苦了。
(3) 哪天若想創業,搞自已的產品,那麼嵌入式是一個不錯的主意,這可不像應用軟體那樣容易被盜版。我們這屆有個同學自己有點此類小生意,具體做什麼的沒細問, 他每月要進貨幾千片8位單片機,現在自己已經有車有房了。還有現在開發的飯館用的點菜PDA(WinCE平台,可無線連網和上網),據說銷路不錯,飯館點點PDA讓客戶點菜,多顯派頭檔次。這些PDA的硬體設計一般都是請別的公司給訂做(這叫「貼牌」:OEM),都是通用的硬體,我們只管設計軟體就變成自己的產品了。
從事嵌入式軟體開發的缺點是:
(1) 入門起點較高,所用到的技術往往都有一定難度,若軟硬體基礎不好,特別是操作系統級軟體功底不深,則可能不適於此行。
(2) 這方面的企業數量要遠少於企業計算類企業。特別是從事嵌入式的小企業數量較多(小企業要搞自己的產品創業),知名大公司較少(搞嵌入式的大公司主要有 Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半導體、 Microtek、研華、華為、中興通信、上廣電等製造類企業)。這些企業的習慣思維方式是到電子、通信等偏硬專業找人。
(3)有少數公司經常要碩士以上的人搞嵌入式,主要是基於嵌入式的難度。但大多數公司也並無此要求,只要有經驗即可。
同學們若學習嵌入式,顯然應偏重於嵌入式軟體,特別是嵌入式操作系統方面,應是我們的強項。對於搞嵌入式軟體的人,最重要的技術顯然是(實際上很多公司的招聘廣告上就是這樣寫的):
(1) 掌握主流嵌入式微處理器的結構與原理
(2) 必須掌握一個嵌入式操作系統
(3) 必須熟悉嵌入式軟體開發流程並至少做過一個嵌入式軟體項目。
在嵌入式軟體方面最重要的課程包括:
(1) 嵌入式微處理器結構與應用:這是一門嵌入式硬體基礎課程,我們說過,嵌入式是軟硬體結合的技術,搞嵌入式軟體的人應對ARM處理器工作原理和介面技術有充分了解,包括ARM的匯編指令系統。若不了解處理器原理,怎麼能控制硬體工作,怎麼能寫出節省內存又運行高速的最優代碼(嵌入式軟體設計特別講究時空效率),怎麼能寫出驅動程序(驅動程序都是與硬體打交道的)?很多公司招聘嵌入式軟體人員時都要求熟悉ARM處理器,將來若同學到公司中從事嵌入式軟體開發,公司都會給你一本該設備的硬體規格說明書 (xxx Specification),你必須能看懂其中的內存分布和埠使用等最基本的說明(就像x86匯編一樣),否則怎麼設計軟體。有些同學覺得嵌入式處理器課程較枯燥,這主要是硬體課程都較抽象的原因。還有同學對ARM匯編不感興趣,以為嵌入式開發用C語言就足夠了。其實不應僅是將匯編語言當成一個程序設計語言,學匯編主要是為了掌握處理器工作原理的。一個不熟悉匯編語言的人,怎麼能在該處理器寫出最優的C語言代碼。在嵌入式開發的一些關鍵部分,有時還必須寫匯編,如Bootloader等(可能還包括BSP)。特別是在對速度有極高要求的場合(如DSP處理器的高速圖像採集和圖像解壓縮),目前還會用到匯編寫程序的,盡管用到的機會相對C要小得多。當你在一個嵌入式公司工作時,在查看描述原理的手冊時,可能很多都是用匯編描述的,這是因為很多硬體設計人員只會寫或者喜歡用匯編描述,此時你就必須看懂匯編程序,否則軟硬體人員可能就無法交流。很多嵌入式職位招聘時都要求熟悉匯編。
(2) 嵌入式操作系統類課程
除了WinCE的實時性稍差外,大多數嵌入式操作系統的實時性都很強,所以也可稱為實時操作系統Real TimeOperating System。從事嵌入式的人至少須掌握一個嵌入式操作系統(當然掌握兩個更好),這在嵌入式的所有技術中是最為關鍵的了。
目前最重要的RTOS主要包括:第一類、傳統的經典RTOS:最主要的便是Vxworks操作系統,以及其Tornado開發平台。Vxworks因出現稍早,實時性很強(據說可在1ms內響應外部事件請求),並且內核可極微(據說最小可8K),可靠性較高等,所以在北美,Vxworks占據了嵌入式系統的多半疆山。特別是在通信設備等實時性要求較高的系統中,幾乎非Vxworks莫屬。Vxworks的很多概念和技術都和Linux很類似,主要是C語言開發。像Bell- alcatel、Lucent、華為等通信企業在開發產品時,Vxworks用得很多。但Vxworks因價格很高,所以一些小公司或小產品中往往用不起。目前很多公司都在往嵌入式Linux轉(聽說華為目前正在這樣轉)。但無論如何,Vxworks在一段長時間內仍是不可動搖的。與Vxworks類似的稍有名的實時操作系統還有pSOS、QNX、Nucleus等RTOS。
第二類、嵌入式Linux操作系統:Linux的前途除作為伺服器操作系統外,最成功的便是在嵌入式領域的應用,原因當然是免費、開源、支持軟體多、呼擁者眾,這樣嵌入式產品成本會低。Linux本身不是一個為嵌入式設計的操作系統,不是微內核的,並且實時性不強。
目前應用在嵌入式領域的Linux系統主要有兩類:一類是專為嵌入式設計的已被裁減過的Linux系統,最常用的是uClinux(不帶MMU功能),目前占較大應用份額,可在ARM7上跑;另一類是跑在 ARM 9上的,一般是將Linux 2.4.18內核移植在其上,可使用更多的Linux功能(當然uClinux更可跑在ARM 9上)。很多人預測,嵌入式Linux預計將占嵌入式操作系統的50%以上份額,非常重要。缺點是熟悉Linux的人太少,開發難度稍大。另外,目前我們能發現很多教材和很多大學都以ucOS/II為教學用實時操作系統,這主要是由於ucOS/II較簡單,且開源,非常適合入門者學習實時操作系統原理,但由於ucOS/II功能有限,實用用得較少。況且熟悉了Linux開發,不僅在嵌入式領域有用,對開發Linux應用軟體,對加深操作系統的認識也有幫助,可謂一舉多得。據我所知,目前Intel、Philip都在大搞ARM+LINUX的嵌入式開發,Fujitum則是在自己的處理器上大搞Linux 開發。目前在嵌入式Linux領域,以下幾個方面的人特別難找,一是能將Linux移植到某個新型號的開發版上;二是能寫Linux驅動程序的人; 三是熟悉Linux 內核裁減和優化的人。不過LINUX有一個硬傷,就是沒有WINDOWS那樣的友好方便美觀的交互界面,不然微軟帝國早就守不住了。
第三類、 Windows CE嵌入式操作系統:Microsoft也看準了嵌入式的巨大市場,MS永遠是最厲害的,WinCE出來只有幾年時間,但目前已佔據了很大市場份額,特別是在PDA、手機、顯示儀表等界面要求較高或者要求快速開發的場合,WinCE目前已很流行(據說有一家賣工控機的公司板子賣得太好,以至來不及為客戶裁減WinCE)。WinCE目前主要為4.2版(.NET),開發平台主要為WinCE Platform Builder,有時也用EVC環境開發一些較上層的應用,由於WinCE開發都是大家熟悉的VC++環境,所以我院學過Windows程序設計課程的同學都不會有多大難度,這也是WinCE容易被人們接受的原因,開發環境方便快速,微軟的強大技術支持,WinCE開發難度遠低於嵌入式Linux。對於急於完成,不想拿嵌入式Linux冒險的開發場合,WinCE是最合適了(找嵌入式Linux的人可沒那麼好找的),畢竟公司不能像學生學習那樣試試看,保證開發成功更重要。根據不同的側重點 ,WinCE還有兩個特殊版本,一個是MS PocketPC操作系統專用於PDA上(掌上電腦),另一個是MS SmartPhone操作系統用於智能手機上(帶PDA功能的手機),兩者也都屬於WinCE平台。在PDA和手機市場上,除WinCE外,著名的PDA 嵌入式操作系統還有Palm OS(因出現很早,很有名)、Symbian等,但在WinCE的強勁沖擊下,Palm和Symbian來日還能有多長?同學學過VC++後再學 WinCE,非常方便自然,通過學習WinCE同樣也可了解嵌入式軟體的一般開發過程,對Linux有懼怕心理的同學也很合適。很顯然,嵌入式Linux 永遠不可能替代WinCE,而且將來誰占份額大還很難講,畢竟很多人更願意接受MS的平台,就像各國政府都在大力推LINUX已好長時間,但你能看到幾個在PC機上真正使用LINUX的用戶?據我觀察,目前在嵌入式平台上,LINUX是叫得最響,但還是WinCE實際用得更多。嵌入式LINUX可能更多地是一些有長遠產品計劃的公司,為降低成本而進行長遠考慮。WinCE和多媒體(如MPEG技術)是微軟亞洲工程院目前做得較多的項目領域之一,現在社會很需要精通WinCE的人。現在有WINCE的智能手機,金山詞霸、WORD、EXCEL、REGEDIT等居然都有 smartphone版的,PC上的MP3、DOC等居然在download時都可被自動轉換成smartphone格式,很爽的。完全可用 Windows CE自己開發一些需要的程序download到自己的手機上。現在市面銷售PDA智能手機火爆,MS總是財源滾滾。
總結關於嵌入式操作系統類課程,若你覺得自己功底較深且能鑽研下去,則可去學嵌入式Linux;若你覺得自己VC++功底較好且想短平快地學嵌入式開發,自學WINCE是非常好的選擇。
(3) 嵌入式開發的相關領域
搞嵌入式若能熟悉嵌入式應用的一些主要領域,這樣的人更受企業歡迎。主要的相關領域包括:
A、數字圖像壓縮技術:這是嵌入式最重要最熱門的應用領域之一,主要是應掌握MPEG編解碼演算法和技術,如DVD、MP3、PDA、高精電視、機頂盒等都涉及MPEG高速解碼問題。
B、通信協議及編程技術:這包括傳統的TCP/IP協議和熱門的無線通信協議。首先,大多數嵌入式設備都要連入區域網或Internet,所以首先應掌握 TCP/IP協議及其編程,這是需首要掌握的基本技術;其次,無線通信是目前的大趨勢,所以掌握無線通信協議及編程也是是很重要的。無線通信協議包括無線區域網通信協議802.11系列,Bluetooth,以及移動通信(如GPRS、GSM、CDMA等)。
C、網路與信息安全技術:如加密技術、數字證書CA以及各種網路安全設備,包括硬體防火牆、入侵檢測IDS、還有防毒牆、IPS等,中國在這方面還是沒有自己優勢的,我們陳院長好象正在往這方面發展。
D、 DSP技術:DSP是Digital Signal Process數字信號處理的意思,DSP處理器通過硬體實現數字信號處理演算法,如高速數據採集、壓縮、解壓縮、通信等。數字信號處理是電子、通信等硬體專業的課程,對於搞軟體的人若能了解一下最好。目前DSP人才較缺。如果有信號與系統、數字信號處理等課程基礎,對於學習MPEG編解碼原理會有很大幫助。
(4)嵌入式開發的相關硬體基礎
對於軟體工程專業的學生,從事嵌入式軟體開發,像數字電路、計算機組成原理、嵌入式微處理器結構等硬體課程是較重要的。另外,匯編語言、C/C++ 數據結構演算法、特別是操作系統等軟體基礎課也是十分重要的。我們的主要目地是能看懂硬體工作原理,但重點應是在嵌入式軟體,特別操作系統級軟體,那將是我們的優勢。我們的研究生里有些是學電子、通信類專業過來的,有較好的模擬電路和單片機基礎,學嵌入式非常合適。
嵌入式本身就是從單片機發展過來的,只是單片機不帶OS,而現在很多嵌入式應用越來越復雜,以至不得不引入嵌入式操作系統。另外,為追求更高速的信號處理速度,現在在一些速度要求較高場合,有不少公司是將一些DSP演算法,如MPEG壓縮解壓縮演算法等用硬體來實現,這就涉及到HDL數字電路設計技術及其 FPGA/IP核實現技術,這方面的人目前市場上也很缺。

關注更多嵌入式請到華清遠見

8. Qt 開發的Wince程序,如何加密,做成需要注冊

不知道你說的是不是這個樣子

9. 國內現在的手持機都支持什麼操作系統有哪些手持機是支持WINCE系統的

江蘇智聯天地科技有限公司-----圓通快遞、中鐵快運、朔黃鐵路、首都機場等企業手持機提供商。業內唯一有大型應用案例的安卓系統手持機廠家,推出國內首款基於Andriod系統、3G網路的工業手持機Simphone N1/N2。 功能全面 1、配備豐富的感測器: 一維、二維條碼掃描,採用進口MotorolaSE955激光掃描頭。 電子標簽RFID、支持RFID13.56M和915M可選 高清500萬自動對焦攝像頭,完美拍攝高清圖片 GPS+AGPS雙定位系統,結合GIS系統,可實現語音、視頻及地理信息聯通。 具備語音集群對講功能,可以進行語音和視頻實時傳輸。 2、支持各種安全數據高速傳輸: WiFi、藍牙、USB數據線等傳輸 3、支持數據加密功能 支持SD卡擴展(可加密) 4、支持刷卡支付列印功能(外接) 優勢特點 1、採用先進的Android操作系統,在此基礎上課開發工作業 務規范化、標准化的業務軟體及OA系統; 1、 4000mAh大電池容量,待機3天以上,人員可長期在外作業 2、 IP67高等級防水防摔,可在水下1.5米深處工作(半個小時以內),適合環境惡劣的室外作業 3、 基於網路的外置按鍵集群對講系統(快速響應、支持WIFI、無需電話費),支持視頻實時上傳業務; 4、 -20℃~50℃的高低溫工作環境,完全適應東北極寒天氣 5、 支持麗音技術,在嘈雜環境下仍可正常通話;雙麥克風設計,加大型陶瓷天線設計 6、 採用3.5寸透光電阻屏,在戶外陽光直射、雨淋、冬季戴手套的情況仍可正常使用; 7、 強聚光手電筒,夜間工作方便

10. wince5.0和6.0有什麼區別

WinCE6.0與5.0的區別

Windows CE6.0重新設計了Kernel,和Windows CE 5.0相比較支持的進程數從32個擴展到32000 ,每個進程的地址空間從32MB擴展到2GB ,很多系統模塊(如文件系統和設備管理器)將運行在kernel模式,OAL也從kernel獨立出來,driver可以運行在kernel模式和user模式。

Visual Studio 2005專業版將包括一個被稱為Platform Builder的功能強大的插件,它是一個專門為嵌入式平台提供的「集成開發環境」。這個集成開發環境使得整個開發鏈融為一體,並提供了一個從設備到應用都易於使用的工具,極大地加速了設備開發的上市 。

Windows Embedded CE 6.0加入了新的單元核心數據和語音組件 , Windows CE 6.0大幅改變了核心定址以及資源分配的機制,舊版CE同時間只能有32個程序執行於各自分配的32MB虛擬存儲器空間中,6.0版則是大幅放寬了限制,最大可同時執行32,000個程序,而且每個程序可擁有獨立分配的2GB虛擬存儲器,在此同時,核心服務、硬體裝置的驅動程序、視窗繪圖以及事件子系統、檔案系統等服務都被轉移到系統核心保留空間中。不過這樣的改變也會帶給使用者疑慮,畢竟過去NT 4.0就曾經上演過類似的戲碼,將驅動程序從使用者模式轉移到核心模式,雖然可以大幅改進應用的速度,但是一個體質不良的驅動程序,可能就會拖垮整個系統,因此在硬體驅動程序的開發上,就必需要有個有效標准來規范,最好還要導入如WHQL之類的驅動程序驗證服務,以避免影響整個系統的穩定性。

Windows CE 6.0的新變革

Windows CE 6.0依舊把眼光投注在ARM架構中,新的BSP與編譯器也都支持了ARM的最新體系,而6.0版也是微軟首個導入ExFAT的操作系統, ExFAT在Windows CE 6.0中,擔當了總管所有外接儲存媒體的中界層的角色,廣為產業界所稱贊的是,這能夠解除過去傳統FAT檔案系統的32GB單一容量限制。

ExFAT同樣也解除了單一檔案只能在2GB以下的限制,這對於硬體廠商以Windows CE發展大容量儲存管理伺服架構,有著相當大的幫助。加上一些安全機制,我們可以把ExFAT視為Windows CE 6.0上的NTFS加強版。

VoIP也是Windows CE 6.0另一個持續加強的重點,除了在應用程序層的整合更進一步以外,操作系統核心也具備直接支持的能力,因此硬體開發上可以更容易的在Windows CE環境上進行各種網路的語音通訊服務。而因應這樣的趨勢,6.0版自然也把過去5.0版的缺失補正過來,在網路堆疊協定方面,直接支持了802.11i、WAP2、802.11e(無線QoS)、藍牙A2DP/AVRCP的AES加密等等,為無線通訊建立了一個穩定、安全以及可靠的應用環境。而從使用者觀點來看,Windows CE 6.0擴展了超越以往版本總和的承諾,這些功能包括了最新的多媒體能力,諸如Windows Media 10/11的支持、,對於網路多媒體裝置的原生整合能力,在Platform Builder開發工具中,甚至也加入了行動媒體中心的支持,可以藉由Windows Media Connect 2.0大幅強化多媒體應用的支持能力,並且可以與其它微軟的操作系統或硬體裝置做同步統合的動作。這些功能包含了以下項目:

■ TIFF編解碼器的支持
■ HD-DVD的解碼器支持
■ MPEG-2解碼器
■ 更多的影音編碼與格式支持
■ UDF 2.5格式的支持
■ 虛擬環繞聲道的支持
■ 多軌音效的支持
■ 強化DirectDraw,可支持電視使用的交錯顯示模式
■ USB OTG功能加入,可作為USB的控制端

雖然在核心部分做出這么大的更新,但是Windows CE 6.0的儲存上並沒有如微軟其它操作系統般的飛漲(Vista甚至需要超過10GB的初始儲存安裝空間!),相較起5.0版,6.0在體積上也不過增加了5%左右,雖然這對嵌入式系統產業來說是理所當然,但對於微軟可以說是另一項奇跡。

Windows CE 6.0帶給開發者的好處
在開放原始碼的歷史中,微軟要寫下另一個新的里程碑,100%對產品開發者釋放出原始碼,且可允許廠商進行自訂的變更或訂做,而無須釋放出經過修改的程序碼,雖然在廣義上並不能視為真正開放,但是為這些喜歡藏私留一手的廠商來說,無疑是增加競爭力的最佳手段之一。而作為開發工具的Visual Studio 2005 PRO將會作為Windows CE 6.0的整體套件之一,內建的許多開發工具與定義對於開發者來說相對便利許多。
Windows CE 6.0支持了Windows .NET Compact Framework 2.0作為應用程序管理開發以及Win32、 MFC、 ATL、 WTL和STL等程序開發界面提供給開發原生應用程序的開發者使用。具備了如此勢力龐大以及完整的開發環境作為支持,開發者與製造商也可確保後續的支持不虞匱乏。
而在硬體方面,在不變更原有的硬體架構之下,導入Windows CE 6.0可以大幅改善原有程序的執行效率,並且也容許同時間有更多程序同步執行,由於每個程序都具備有獨立的執行空間,特定程序當掉,也不會影響到其它應用程序或系統執行,提供給使用者比起以往舊版系統更強的穩固性與更大的彈性。而目前逐漸風行的多核心處理架構上,Windows CE 6.0也可以在不變更程序開發者原有程序模型的狀況之下,提供最佳化的核心工作自動分配與指定,當然,如果有需求的話,程序開發者依然可以自行決定指定核心的方式。

WinCE6.0 R3新特徵
Windows Embedded 6.0 R3是在Windows CE 6.0 R2的基礎上,增加了下列技術:

Silverlight for Embedded

Internet Explorer Embedded瀏覽器

Flash Lite支持

手勢識別Gesture API

Connection Manager

Mobile QQ

Office Viewer

其中Internet Explorer Embedded是由Windows Embedded中國研發團隊單獨開發的。而Mobile QQ是由騰訊公司開發整合的。

新增了Silverlight for Windows Embedded ,此項功能是 Microsoft Silverlight 技術不依賴於瀏覽器的本機代碼執行,用於為基於 Windows Embedded CE 6.0 R3 的設備打造豐富的用戶界面。比如,在Expression Blend下,可以更容易的進行視圖開發,通過XRCustom UserControlImpl類就可以簡單創建一個自定義控制,用於控制高清視圖的大小、顏色和動態畫面等眾多的常用操作。現在原始設備製造商能夠獨立設備上用戶體驗設計和核心功能開發,通過縮短應用開發時間幫助提高上市流程效率,從而實現簡化的用戶界面定製,並讓設計人員和開發人員能夠專注於他們的核心能力。現在可以由專門的開發人員來使用Silverlight、Microsoft Expression Blend和Internet Explorer Embedded技術開發高清內容。

作為Windows 7世代的產品,他提供了與Windows 7的連通性——Windows 7 Device Stage 驅動埠。並且開發者和OEM廠商還以通過Microsoft Connection Manager(微軟鏈接管理器)實現設備和PC間的連接。同時新增的office和PDF查看器也豐富了互連體驗。

Flash Lite組件的支持,使得WinCE有了播放FLASH動畫和視頻的能力,增強了用戶體驗。

熱點內容
暢捷支付刷臉機如何設置密碼 發布:2024-05-19 13:03:10 瀏覽:764
java麻將 發布:2024-05-19 13:03:00 瀏覽:433
存儲過程大數據游標 發布:2024-05-19 13:00:50 瀏覽:515
內存存儲價格 發布:2024-05-19 13:00:48 瀏覽:389
隔離期的演算法 發布:2024-05-19 12:55:13 瀏覽:530
蘋果怎麼裝安卓模擬器 發布:2024-05-19 12:42:15 瀏覽:801
腳本養微信 發布:2024-05-19 12:42:14 瀏覽:148
人臉識別演算法公司 發布:2024-05-19 12:37:10 瀏覽:682
蘋果平板怎麼跟安卓電腦投屏 發布:2024-05-19 12:36:20 瀏覽:20
廣州稅控盤密碼和口令是多少 發布:2024-05-19 12:25:36 瀏覽:595