1. Trang chủ
  2. » Luận Văn - Báo Cáo

một số vấn đề khi phát triển ứng dụng gis trên pocket pc

22 347 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 530,24 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Some Issues of Developing GIS Applications on Pocket PC D ng Anh c - Lê Th y Anh – Võ S Nam - L nh Hùng S n Khoa Công Ngh Thông Tin i h c Khoa h c T nhiên Thành ph H Chí Minh E-mail:dadu

Trang 1

M t s v n đ khi phát tri n ng d ng GIS trên Pocket PC

D ng Anh c - Lê Th y Anh – Võ S Nam - L nh Hùng S n

Khoa Công Ngh Thông Tin

i h c Khoa h c T nhiên Thành ph H Chí Minh E-mail:daduc@fit.hcmuns.edu.vn;ltanh@fit.hcmuns.edu.vn;

namvosy@yahoo.com;dlhson@hcm.fpt.vn

Pocket PC là m t d ng thi t b c m tay giúp ng i s d ng l u tr cácthông tin cá nhân, công vi c c n thi t c ng nh các ph n m m t i thi u trên m tthi t b nh g n Pocket PC ch y trên n n h đi u hành nhúng Windows CE, h

đi u hành đa nhi m 32-bits ch cung c p b nh m t cách gi i h n cho các ng

d ng phát tri n trên nó Vì v y, các ng d ng liên quan t i h th ng thông tin đ a

lý (Geography Information System – GIS) phát tri n trên Pocket PC và h đi uhành Windows CE g p ph i các v n đ v t i u hoá b nh c ng nh t c đ ng

d ng Trong bài vi t này, chúng tôi trình bày m t s v n đ khi xây d ng ng

d ng GIS trên Pocket PC và h đi u hành Windows CE 3.0

Some Issues of Developing GIS Applications on Pocket PC

D ng Anh c - Lê Th y Anh – Võ S Nam - L nh Hùng S n

Khoa Công Ngh Thông Tin

i h c Khoa h c T nhiên Thành ph H Chí Minh E-mail:daduc@fit.hcmuns.edu.vn;ltanh@fit.hcmuns.edu.vn;

namvosy@yahoo.com;dlhson@hcm.fpt.vn

Designed with mobile professionals in mind, Pocket PCs let users keeptheir vital personal and business information up-to-date and close at hand.PocketPC runs on embedded operating system Windows CE, which provideslimited memory to applications developed on it Therefore, when developingGeography Information System (GIS) applications on PocketPCs and Windows

CE, it is recommended that we optimize memory usage and enhance the speed ofthese applications

In this paper, we present some problems about building GIS applications onPocket PC and Windows CE 3.0

Trang 2

1 T V N

S phát tri n m nh m c a Internet, c ng nh kh n ng c a công ngh ph n

c ng, đã d n đ n s ra đ i c a các thi t b ng d ng Internet Theo các nhà nghiên

c u th tr ng, m c dù PC v n gi vai trò ch y u trong vi c x lý và h tr công

vi c, nh ng các thi t b Internet hay thi t b h tr cá nhân s ngày càng kh ng

Tuy nhiên, Pocket PC ch y trên n n h đi u hành nhúng Windows CE, h

đi u hành ch cung c p b nh m t cách gi i h n cho các ng d ng phát tri n trên

nó Vì v y, các ng d ng liên quan t i h th ng GIS phát tri n trên Pocket PC và

h đi u hành Windows CE g p ph i các v n đ v t i u hoá b nh c ng nh t c

đ và th ng có t c đ ch m h n nhi u so v i các ng d ng trên PC thông

th ng Ngoài ra, do kh n ng l u tr có gi i h n, vi c ng d ng GIS trên môi

tr ng này c ng g p không ít khó kh n

POCKET PC

2.1 KH N NG TÍNH TOÁN C A POCKET PC

Pocket PC s d ng m t lo i CPU khác v i CPU thông th ng Máy Pocket

PC 2002 s d ng CPU StrongARM ho c XScale c a Intel Các CPU này đ c

g i là các b x lý RISC (Reduced Instruction Set Computer) vì nó ch th c hi n

Trang 3

m t l nh trong m t chu kì CPU (M i chu kì CPU trong m t giây g i là 1 Hertzhay 1 Hz) Máy PC thông th ng c a chúng ta s d ng b x lý CISC (ComplexInstruction Set Computer), đòi h i nhi u chu kì CPU đ x lý m t l nh xác đ nh.

Do đó, các b x lý RISC nh StrongARM theo lý thuy t, có th tính toán lên t i

206 tri u l nh m t giây n u nó x lý t c đ 206 Mhz

Các b x lý StrongARM và XScale c ng x lý các l nh 32bit, gi ng nh

PC thông th ng Tuy nhiên, l i có m t khác bi t l n trong vi c x lý kích th c

l nh B x lý CISC cho phép l nh có th có chi u dài bi n đ i, vì v y, nó ph itính toán kích th c c a d li u c n đ c khi x lý l nh Trong ki n trúc RISC, m i

l nh 32bit s có 32 d li u đi kèm Vì v y, b x lý luôn bi t đ c ph i đ c baonhiêu d li u., đây là m t đi m m nh c a ki n trúc này

r ng c a bus cùng v i t c đ bus c ng có m t nh h ng l n đ n t c đ

x lý và tính toán c a máy tính r ng c a bus ch ra s l ng bit (hay byte) d

li u có th đ c t / ghi lên RAM vào b vi x lý Còn t c đ bus ch ra d li u có

th đ c đ c t RAM vào b vi x lý v i đ nhanh nh th nào Ta có th hìnhdung, đ r ng bus nh s làn giao thông trên xa l , còn t c đ bus nh gi i h n v

t c đ khi l u thông Hi n này, StrongARM và XScale s d ng bus t c đ100Mhz và thi t k hi n nay c a Pocket PC cho phép dùng bus 16bit i u này cóngh a là t c đ bus t i đa là 200MB/giây

V n đ đ t ra đây là nh v y, b vi x lý có th đ t đ c t c đ x lý baonhiêu Do chúng ta c n đ c 8bytes d li u tr c khi x lý m t l nh, nên gi schúng ta có đ c t c đ bus t i đa là 200MB/giây, thì th c s , b x lý ch thihành đ c 25 tri u l nh

Ngoài ra, l i có m t v n đ khác, đó là cache Cache là m t lo i RAM đ c

bi t đ c ch a bên trong CPU và x lý v i cùng t c đ c a CPU Cache trong b

x lý StrongARM là 16K cho mã ch ng trình và 8K cho d li u, cache trongXScale là 32K cho mã ch ng trình và 32K cho d li u N u d li u và mã

ch ng trình c n x lý đ c ch a tr n trong cache, h th ng s có th thi hành v i

t c đ th t c a CPU Nh v y, t c đ c a ng d ng có th đ c thi hành s có th

Trang 4

t ng t 25 lên 206 tri u l nh m t giây, tu theo ch ng trình và d li u có v a v ikích th c cache không T c đ c a h th ng c ng ph thu c vào ngu n cung c p

n ng l ng, do đó, khi s d ng Pocket PC, ta có th nh n th y s khác bi t v t c

đ khi th c thi ch ng trình

Bây gi , s d ng các đ so sánh v hi u su t ho t đ ng gi a máyDesktopPC và Pocket PC Các h th ng Desktop PC hi n t i th ng s d ng bus100-133 Mhz Pentium IV có th s d ng DDR RAM ho c RAM BUS (RDRAM) có t c đ t 200-800Mhz Vì v y, ch xét trên phu ng di n RAM, n u s

d ng RAM 133Mhz, hi u su t Desktop PC đã t ng 1/3 l n (25 lên 33 tri u l nh

m t giây) T c đ CPU c a Desktop c ng l n h n r t nhi u khi hi n t i đã đ t t i

t c đ trên 3Ghz d n đ n hi u su t toàn h th ng cao h n

Khi l p trình ng d ng GIS trên Pocket PC, đ c đi m v b x lý c ng nh

t c đ c a Pocket PC nh h ng r t l n đ n t c đ hi n th , x lý c ng nh tìm

ki m thông tin GIS gi i quy t v n đ này, ta c n có nh ng gi i pháp phù h p

đ t ng hi u n ng c a ng d ng, giúp ng i s d ng có th s d ng đ c ch ngtrình v i t c đ ch p nh n đ c

i v i các ng d ng GIS, m t trong nh ng v n đ quan tr ng nh t c n

ph i quan tâm, đó là h tr hi n th c a môi tr ng

T ng t trên môi tr ng Windows – phiên b n desktop, các đ i t ng tr cquan nh v n b n, đ ho đ c GDI (Graphics Device Interface) đi u khi n V icác hàm GDI này, ng d ng có th v ho c hi n th đ ng th ng, đ ng cong, các

đ ng khép kín, v n b n và các bitmap Màu và ki u c a các đ i t ng này d atrên các đ i t ng đ ho mà l p trình viên t o ra và s d ng

GDI trên Windows CE c ng s d ng m t ng c nh thi t b (device context )

đ l u tr d li u c n đ c hi n th trên thi t b Các đ i t ng đ ho đ c l u

tr trong device context môi tr ng Windows CE bao g m m t bút v (pen) đ

v nét, ch i v (brush) đ tô màu, font ch đ hi n th ch , bitmap ph c v cho

Trang 5

vi c sao chép ho c kéo, b ng màu (palette) đ ch đ nh màu v , và vùng clipping.Windows CE h tr ng c nh thi t b máy in (printer device context) c a máy in

đ v lên máy in, ng c nh thi t b hi n th (display device context) đ v lên thi t

b video, ng c nh b nh (memory device context ) đ v lên b nh

Khi xây d ng ng d ng GIS trên Pocket PC, c n chú ý t i vi c ch đ c s

d ng các tính n ng GDI đ c h tr trên môi tr ng này Danh sách các tính n ng

đ c h tr đ c li t kê trong b ng sau

Font Raster và TrueType Các font True Type có th kéo giãn ho c quay

đ c

H tr s n 7 font Raster trong ROM

Windows CE ch h tr m t lo i font, c raster l nTrueType trên 1 lo i thi t b xác đ nh

B ng màu H tr các đ sâu màu 1, 2, 4, 8, 16, 24, và 32 bits

per pixel (bpp) M t bpp depth of 2 is unique toWindows CE

Trang 6

Ta nh n th y, do c n ph i thu g n ki n trúc c ng nh các h tr nh m m cđích t i u t c đ cho các thi t b nhúng có tài nguyên gi i h n, Windows CE đã

ch cung c p m t cách gi i h n các tính n ng c a GDI

Windows CE GDI không h tr các đ c tính:

• Thay đ i to đ không gian, nh SetMapMode, GetMapMode,

SetViewportExt, và SetWindowExt T a đ không gian s t ng ng v ikhông gian c a thi t b

• Các hàm World Transform API

• Các hàm MoveTo và LineTo

• Con tr có màu s c, con tr đ ng (animated)

Và đi u này c ng là m t trong nh ng lí do d n đ n các th vi n đ ho c aMFC c ng không h tr r t nhi u hàm liên quan t i v n đ hi n th Th nhìn quacác hàm không đ c h tr ho c h tr nh ng có thay đ i c a CWnd, l p đ i

t ng hi n th chu n c a MFC, trên môi tr ng Windows CE 3.0, ta đã th y r tnhi u tính n ng quan tr ng c n ph i s d ng trong ng d ng GIS không đ c h

tr , m t khó kh n l n trong quá trình xây d ng ng d ng GIS

ArrangeIconicWindows OnDeviceChange OnNcRButtonDown

CancelToolTips OnDevModeChange OnNcRButtonUp

ChangeClipboardChain OnDrawClipboard OnPaintClipboard

CreateCaret OnDropFiles OnPaletteIsChanging

CreateGrayCaret OnDSCNotify OnParentNotify

DlgDirList OnEndSession OnQueryDragIcon

DlgDirListComboBox OnEnterIdle OnQueryEndSession

DlgDirSelect OnEnterMenuLoop OnQueryNewPalette

DlgDirSelectComboBox OnExitMenuLoop OnQueryOpen

DragAcceptFiles OnGetMinMaxInfo OnRButtonDblClk

DrawMenuBar OnHScrollClipboard OnRButtonDown

EnableScrollBar OnIconEraseBkgnd OnRButtonUp

EnableToolTips OnInitMenu OnRegisteredMouseWheel

Trang 7

FilterToolTipMessage OnMButtonDblClk OnSetCursor

FlashWindow OnMButtonDown OnSizeClipboard

GetClipboardViewer OnMButtonUp OnSizing

GetDCEx OnMDIActivate OnSpoolerStatus

GetDSCCursor OnMenuSelect OnStyleChanging

GetLastActivePopup OnMouseActivate OnSysColorChange

GetSystemMenu OnMouseWheel OnTimeChange

GetUpdateRgn OnMoving OnToolHitTest

GetWindowContextHelpId OnNcActivate OnVScrollClipboard

GetWindowPlacement OnNcCalcSize OnWindowPosChangingGetWindowRgn OnNcCreate SetClipboardViewer

HiliteMenuItem OnNcHitTest SetMenu

InvalidateRgn OnNcLButtonDblClk SetWindowContextHelpIdIsZoomed OnNcLButtonDown SetWindowPlacement

LockWindowUpdate OnNcLButtonUp SetWindowRgn

OnActivateApp OnNcMButtonDblClk ShowOwnedPopups

OnAskCbFormatName OnNcMButtonDown ShowScrollBar

OnChangeCbChain OnNcMButtonUp UnockWindowUpdate

OnChildActivate OnNcMouseMove ValidateRgn

xu t h tr trên Pocket PC và tu thu c vào lo i Pocket PC

Do h n ch v ngu n n ng l ng pin và kích th c c a thi t b , Pocket PCkhông s d ng các thi t b l u tr nh đ a c ng hay đ a m m mà nó s d ng m t

c ch g i là B l u tr đ i t ng (Object store) Object store là m t vùng RAM

đ c ng i dùng đ nh ngh a, dùng đ l u tr các t p tin, các thông tin registry vàcác database (g i là Object Store d ng Storage) Vùng RAM còn l i dùng làm b

Trang 8

nh cho các ch ng trình đ c th c thi (g i là Object Store d ng Program).Object store l u các thông tin d i m t d ng do h đi u hành quy đ nh, khác v itrên Desktop và v n l u gi đ c thông tin c a các ng d ng và d li u ngay ckhi n ng l ng cung c p chính b m t nh ngu n pin d tr Có th xem ObjectStore nh là đ a c ng trên thi t b dùng Windows CE vì các end-user không bi t

v Object Store do Microsoft đã cung c p trình WinCE Explorer đ đ c n i dung

c a nó (t ng t nh Microsoft Windows Expoler đ đ c n i dung c a đ a c ngtrên máy desktop PC)

i m khác bi t ch y u mà ta c n l u ý là object store trên Windows CE là

vi c thi u các kí t đ a Windows CE s d ng các th m c d i th m c g ccho vi c cài đ t các thi t b c a ng i dùng Ví d , n u ng i dùng g n m t flashcard vào máy, Windows CE s t o ra m t th m c /Storage Card 1 C m i flashcard đ c g n vào, con s này s t ng lên (/Storage Card 2,…)

ng d n t i t p tin đ c gi i h n b i MAX_PATH (có th dài t i đa 260

kí t , gi ng nh trên Windows) Tuy nhiên, trên Windows CE không có khái ni m

th m c hi n hành, ta ph i truy xu t các t p tin b ng các đ ng d n d y đ c a nó

Trên Windows CE 2.0, các t p tin có kích th c t i đa là 4MB và s l ng

t i đa trong object store là 65535 Trên Windows CE 3.0, kích th c t i đa cho

m t t p tin là 32MB, s l ng t i đa đ i t ng l u tr trong object store là g n4.000.000

Do b nh c a thi t b gi i h n, và ph i chia x làm hai ph n Object Store

d ng Storage và d ng Program, nên các ng d ng luôn ph i tính toán sao cho s

d ng t i u Object Store, không s d ng quá nhi u Object Store d ng Storage,song không đ c vì lí do này mà lúc n p ch ng trình th c thi, l i s d ng quánhi u Object Store d ng Program

2.4 C P PHÁT B NH

i v i ng d ng GIS, m t v n đ th ng g p là ph i c p phát b nhnhi u l n Vi c s d ng d th a hay sai sót trong c p phát, gi i phóng b nh có

Trang 9

th đ l i h u qu r t nghiêm tr ng, đ c bi t là khi s l ng đ nh c a đ th là r t

l n Trên môi tr ng Pocket PC, vi c đ l i nh ng vùng nh d th a s làm ch mtoàn b h th ng, đ ng th i x y ra nh ng l i r t nghiêm tr ng, do dung l ng b

nh không nhi u

Windows CE s d ng các hàm API liên quan t i b nh o đ c p phát b

nh cho vùng heap và stack i m l i c a s d ng b nh o là b nh o khôngphân m nh: Windows CE luôn c p phát m t s nguyên các trang Vì Windows CE

qu n lý b nh o theo các kh i 64KB, do đó khi ch ng trình không s d ng h tvùng nh 64KB thì nên dùng m t vùng nh heap đ tránh lãng phí

2.4.1 CÁC C CH S D NG B NH

• Local Heap

Heap là m t vùng không gian b nh o d tr mà Windows CE qu n lý đ

c p phát cho ch ng trình Kích th c c a heap kho ng 4bytes hay 8bytes, tùythu c lo i CPU

b nh stack cho ti u trình đó M i ti u trình có m t stack và m i stack có m tvùng 2KB cu i cùng đ đi u khi n tràn stack

• Static data block

Kh i d li u t nh (Static data block) là m t kh i nh mà Windows CE dànhcho ch ng trình Kh i này ch a chu i, buffer, và các giá tr t nh khác mà ch ngtrình s d ng trong su t quá trình th c thi Ta có th gi m kích th c c a các kh i

d li u b ng cách khai báo d li u trong ph n read/write v i khai báo const

Trang 10

2.4.2 NH N BI T TÌNH TR NG THI U B NH

Cho dù c p phát b nh hi u qu th nào và ch ng trình có s d ng b

nh RAM hi u qu th nào, thi t b Pocket PC v n có th b thi u b nh m c

đ l p trình, ta có th bi t đ c tình tr ng thi u b nh theo nh ng cách sau:

• Hàm Virtual Alloc tr v 0, cho bi t c p phát không thành công

• LocalAlloc ho c HeapAlloc tr v 0, cho bi t vi c t ng kích th c vùngheap không thành công

• Windows CE tr v m t l i stack cho ch ng trình, cho bi t c p phátstack không thành công

• Khi m t ch ng trình có yêu c u c p phát b nh , Windows CE ki mtra và l c yêu c u, nh m tránh vi c s d ng t t c b nh có s n cho

m t c p phát l n Khi Windows CE b c vào tình tr ng thi u b nh ,

nó s gi m gi i h n b nh t i đa cho ch ng trình

• Windows CE g i thông đi p WM_HIBERNATION t i các ng d ng

nh m thông báo tình tr ng thi u b nh

Ng i s d ng t ng tác v i thi t b thông qua m t màn hình touch-screenLCD (màn hình c m nh n) Không s d ng bàn phím (keyboard) và chu t(mouse) thông th ng, Pocket PC h tr nh p li u thông qua m t bàn phím logic,

g i là SIP (Soft Input Panel) Bàn phím logic này th c ch t là m t khung c a sluôn t n t i trên màn hình, mô t và s p x p các phím t ng t trên máy PC thông

th ng Ng i dùng s giao ti p v i SIP thông qua ngón tay ho c stylus (m t cây

vi t v t lý, cho phép nh p li u b ng cách vi t tr c ti p lên màn hình)

Thay th cho vi c nh n Enter hay nh n đúp chu t, Pocket PC s d ng c

ch single-tapping (nh n đ n) lên touch screen Ng i dùng ch c n nh n m t l nlên m t đ i t ng ho c liên k t, h đi u hành s m đ i t ng/liên k t t ng ng

Trang 11

Ngoài ra, đ giao ti p v i ng d ng, ng i dùng có th nh n-và-gi and-hold) ây là c ch có tác d ng t ng t nh vi c s d ng context-menu

(tap-b ng cách nh n ph i chu t trên PC Khi ng i dùng nh n-và-gi trên m t đ i

t ng, có th m t menu ho c m t tooltip s hi n ra, tu theo đ i t ng đó x lý

nh th nào

Trong ng d ng GIS, ta nh n th y vi c nghiên c u và x lý các cách t ngtác trên là r t c n thi t, b i trong d ng ng d ng này, vi c di chuy n, phóng to, thu

nh , tra c u b n đ là nh ng hành đ ng r t th ng xuyên x y ra Bên c nh đó,

ph i đ nh ngh a l i trong ng d ng các hardware keys (phím v t lý) nh m t n d ngcác phím di chuy n s n có c a thi t b Pocket PC nh m t ng t c đ t ng tác cho

ng i dùng khi xem b n đ

Các ng d ng liên quan t i h th ng thông tin đ a lý (GeographyInformation System – GIS) phát tri n trên Pocket PC và h đi u hành Windows

• B o đ m l u tr ít nh t thông tin có th trên Object Store d ng Storage

• B o đ m đ c t c đ khi x lý tính toán đ hi n th và tìm ki m, tra c u thông tin.

đây, chúng tôi xin phép trình bày m t s v n đ liên quan đ n t ch c l u

tr thông tin GIS đã đ c th nghi m đ i v i d li u b n đ TPHCM đ c s hoá

t ph n m m Smart Map Editor ([ 3]) D li u b n đ ngu n bao g m các file

d ng v n b n có c u trúc (text), các file d ng nh phân có c u trúc (DBF, SHP).Các d li u ngu n này mô t thông tin c a các đ i t ng trên b n đ , c th nhsau:

Ngày đăng: 12/04/2015, 14:14

HÌNH ẢNH LIÊN QUAN

Hình 3-1:  ng bao qu n/huy n - một số vấn đề khi phát triển ứng dụng gis trên pocket pc
Hình 3 1: ng bao qu n/huy n (Trang 13)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w