Mời các bạn cùng tham khảo Bài giảng Hệ điều hành - Chương 7: Giao diện người sử dụng để nắm bắt được những kiến thức về khái niệm về giao diện người sử dụng, vấn đề thiết kế giao diện người sử dụng, cấu trúc giao diện người sử dụng, hệ thống cửa sổ và hoạ tiết ở Unix, hệ thống cửa sổ trong Windows NT và các bài tập của chương 7.
Trang 1CH ƯƠ NG 7. GIAO DI N NG Ệ ƯỜ I S D NG Ử Ụ
7.0. Khái ni m v giao di n ngệ ề ệ ườ ử ụi s d ng
Chương trình c a ngủ ườ ử ụi s d ng không th nhìn th y cái gì đang x y raể ấ ả trong máy tính.Do đó, đi u quan tr ng đ i v i d ch v c a chề ọ ố ớ ị ụ ủ ương trình tươ ngtác là ph i thi t k trình xu t nh p,nh m làm cho ngả ế ế ấ ậ ằ ườ ử ụi s d ng luôn luôn hi uể
r ng,cái gì đằ ược anh ta ch đ i.Ki u và phờ ợ ể ương pháp cho phép s d ng tácử ụ
đ ng lên các chộ ương trìnhc a m t máy tính, đủ ộ ược g i là giao di n ngọ ệ ườ ử i s
d ng (user interface). Vi c nh p vào m t s bày t và xu t ra nh ng d li u đãụ ệ ậ ộ ự ỏ ấ ữ ữ ệ
được s lý đóng m t vai trò quan tr ng. Bên c nh nh ng thi t b xu t truy nử ộ ọ ạ ữ ế ị ấ ề thông nh máy in, máy v , ngày nay, thay vào đó, t t c các hình v và dư ẽ ấ ả ẽ ữ
li u đệ ược th hi n len màng hình ngay trể ệ ước m t.ặ
Tuy nhiên, giao di n ngệ ườ ử ụi s d ng tương tác đ h a các máy tính ngàyồ ọ ở nay đ t ra nh ng yêu c u r t cao v các ngặ ữ ầ ấ ề ườn tài nguyên cu máy tính,nóả
được phát tri n b i ph m vi mã cũng nh b i vi c chi tiêu ngu n tài nguyênể ở ạ ư ở ệ ồ
c a m t trong các b ph n chính c a m t máy tính cá nhân (CPU,bủ ộ ộ ậ ủ ộ ộ
nh ),các b ph n này ph i đớ ộ ậ ả ược g n ch t trong h đi u hành đ ho t đ ngắ ặ ệ ề ể ạ ộ
m t cách có hi u nghi m. Do đó, trên góc đ ph n c ng, các c c (card) đ h aộ ệ ệ ộ ầ ứ ạ ồ ọ
được d đ nh v i các b vi x lý đ h a hay v i các b nh l p l i hình nhanh.ự ị ớ ộ ử ồ ọ ớ ộ ớ ặ ạ Ngay c b vi x lý chính, các l nh máy ph i đả ở ộ ử ệ ả ược tr giúp cho đ h a (thíợ ồ ọ
d máy tính Intel MMX) đ tăng t c đ chuan đ i chụ ể ố ọ ổ ương trình
S tr giúp c a h đi u hành cho giao di n ngự ợ ủ ệ ề ệ ườ ử ụi s d ng tương tác đ h aồ ọ
là m t ti p giáp quan tr ng đ i v i c u trúc c a t t c các h đi u hành hi nộ ế ọ ố ớ ấ ủ ấ ả ệ ề ệ
đ i. B i l đó, chúng ta s làm vi c trong chạ ở ẽ ẽ ệ ương trình này v i các yêu c uớ ầ
th c ti n, các ý tự ễ ưởng thi t k và các câu h i th c thi v các giao di n ngế ế ỏ ự ề ệ ườ i
s d ng trong s bao quát v các b ph n c a các h đi u hành truy n th ngử ụ ự ề ộ ậ ủ ệ ề ề ố
và các ngu n tài nguyên c a máy tính.ồ ủ
7.1. V n đ thi t k giao di n ng ấ ề ế ế ệ ườ ử ụ i s d ng
Giao di n đ h a ngệ ồ ọ ườ ử ụi s d ng ngày nay d a trên nh ng công vi c n nự ữ ệ ề
t ng c a nhóm nghiêng c u Xerox v máy tính STAR và b n d án mang tênả ủ ứ ề ả ự Smalltalk 80 vào đ u th p k 80. H thi t k không ch m t máy tính cá nhânầ ậ ỉ ọ ế ế ỉ ộ
v i m t màng hình lớ ộ ướ ồ ọi đ h a (v i nh ng tớ ữ ương quan lúc b y gi , nó đấ ờ ượ c
g i là m t cu c cách m ng; b i v y, máy tính Xerox STAR và b n sao c a nóọ ộ ộ ạ ở ậ ả ủ
đã làm cho h th ng Apple Lisa tr nên ít hi u nghi m); đ c bi t h đã phátệ ố ở ệ ệ ặ ệ ọ tri n m t cách có h th ng ngôn ng l p trình hể ộ ệ ố ữ ậ ướng đ i tố ượng t ng quát v iổ ớ giao di n ngệ ườ ử ụi s d ng đ y ti n d ng.Do đó, h đã mô hình hóa nh ng v nầ ệ ụ ọ ữ ấ
đ qu n lí văn phòng trên màng hình; h thu x p m i đ i tề ả ọ ế ỗ ố ượng ch ng h n nhẳ ạ ư
Trang 2m t trang gi y, m t gi rác, m t máy in, m t t ch a n i đ t hàng b i bi uộ ấ ộ ỏ ộ ộ ủ ứ ơ ậ ở ể
tượng; mà t đó, ngừ ười ta nh n bi t đậ ế ược ý nghĩa c a chúng. Các tác đ ng bìnhủ ộ
thường (nh m các chi u đô, thi t đ tài li u ) đư ở ế ế ặ ệ ược mô hình hóa nh là cácư tác đ ng gi a các hình nh bi u tộ ữ ả ể ượng th c trên m t giao di n v i m t bàn vi tự ộ ệ ớ ộ ế o
mu n hoàn thi n. Thu c cái đó, chúng đố ệ ộ ược phát tri n thành m t thi t b hi nể ộ ế ị ể
th , đị ược g i là chu t. S lọ ộ ố ượng các nút b m d n ra m t t i u th c hi n lá hai;ấ ẫ ộ ố ư ự ệ
m t liên hi p g m có ba nút thộ ệ ồ ường dành cho nh ng d ch v ph c t p; còn m tữ ị ụ ứ ạ ộ nút b m thì út dùng.ấ
Thay vì ph i ghi nh và ph i gõ t t c các l nh, chúng có th đả ớ ả ấ ả ệ ể ược d nẫ
ra b i vi c áp d ng danh sách l a ch n, g i là menu.M i l a ch n này còn cóở ệ ụ ự ọ ọ ỗ ự ọ
th để ược c u trúc tr i ra m t menu k ti p. K t thúc quá trình l a ch n là m tấ ả ộ ế ế ế ự ọ ộ
l nh nào đó.ệ
S lố ượng các l nh ph i ít nh t, vì đ đ m b o tác d ng c a chúng v aệ ả ấ ể ả ả ụ ủ ừ
v n năng v a đ c l p v i nhau, g i là tính tr c giao (ạ ừ ộ ậ ớ ọ ự orthogonal) c a các l nh.ủ ệ
Nh ng l nh sau đây đữ ệ ược coi là đ t đạ ược nguyên t c đó: MOVE (di chuyên),ắ COPY (sao), DELETE (xóa), UNDO (ph c h i), HELP(tr giúp),vàụ ồ ợ showProperties (các tài nguyên th y đấ ược).Thí d , ngụ ười ta có th sao chép m tể ộ dòng text trong trình Editor cũng nh toàn b m t tài li u hay m t b c hìnhở ư ộ ộ ệ ộ ứ
v i l nh COPY; tuy nhiên, đi u này còn n d nhi u ch c năng khác nhau. V iớ ệ ề ẩ ụ ề ứ ớ
l nh ShowProperties, nó nói v s mô t m t trang d li u có th thay đ iệ ề ự ả ộ ữ ệ ể ổ
tương h ,mà nó cho phép vi c xu tnh p các thông s ng c nh,thí d xê d chổ ệ ấ ậ ố ữ ả ụ ị
m t đ i lộ ạ ượng nào đó, thay đ i cú pháp hay thay đ i lo i t i m t đ i tổ ổ ạ ạ ộ ố ượ ng
c a bài text.ủ
Nh ng l nh đa năng đã đữ ệ ược thu x p cho các nút bàn phím ch c năng,ế ứ còn g i là con đọ ường t t(shortcut), chúng cũng đắ ược ch ra trên menu v i vi cỉ ớ ệ
nh p nút chu t ph i.ấ ộ ả
T t c các d li u và tài li u đấ ả ữ ệ ệ ược g i chung là tài nguyên; chúng xu tọ ấ
hi n nh s thay đ i các d li u đang t n t i và nh s làm thích ng cácệ ờ ự ổ ữ ệ ồ ạ ờ ự ứ nhi m v đ c bi t cũng nh nh c u trúc di truy n m t đ i tệ ụ ặ ệ ư ờ ấ ề ộ ố ượng. Do đó, không có l nh CREATE t n t i; các tác gi cho r ng cái đó quá ph c t p đ iệ ồ ạ ả ằ ứ ạ ố
v i con ngớ ười
Ngườ ử ụi s d ng c n ph i luôn luôn ch trên m t bình di n m tầ ả ỉ ở ộ ệ ộ
chương trình; mà t đó, anh ta có th kh i đ u các tác đ ng c a mình, chừ ể ở ầ ộ ủ ứ không ph i ch làm vi c c đ nh trên m t môdun chả ỉ ệ ố ị ộ ương trình, vì t i đó, anh taạ
Trang 3không th bi t để ế ược nhi u h n v :c u trúc nh p d li u t n t i đâu và m iề ơ ề ấ ậ ữ ệ ồ ạ ở ọ chuy n x y ra đây nh th nào(?).ệ ả ở ư ế
Hình dáng c a các tài li u trên màn hình ph i phù h p v i cách bi uủ ệ ở ả ợ ớ ể
l th c t Do đó, màn hình độ ự ế ược đ t vào nh m t t gi y, công vi c còn l i làặ ư ộ ờ ấ ệ ạ
ch n font ch và c ch ọ ữ ỡ ữ
Vi c l a ch n ki u ch qua vi c rê và nh p chu t đ l a ch n cácệ ự ọ ể ữ ệ ấ ộ ể ự ọ
ki u ch l n nh khác nhau để ữ ớ ỏ ược th c hi n đ u tiên.ự ệ ầ
V n đ còn l i là, hình nh v m t thi t b v t lý đấ ề ạ ả ề ộ ế ị ậ ượ ảc c m nh n trên bi uậ ể
tượng (icon) c a nó: cái gì s x y ra v i m t tài li u, n u ngủ ẽ ả ớ ộ ệ ế ười ta rê chu t t iộ ớ
m t bi u tộ ể ượng? Có ph i nó không b thay đ i trang vi t khi th c hi n sao chépả ị ổ ế ự ệ trên máy in? Đi u đó thì không th c ch t, nó có b bi n m t khi in không? Sauề ự ấ ị ế ấ khi nó b xóa s ch hay sau khi in thì cái gì s x y ra?ị ạ ẽ ả
Đi u ng c nhiên là, v i m t l i d n vào, ngày nay ngề ạ ớ ộ ố ẫ ười ta đã tìm th yấ nhi u phép n d c a c a s so n th o, mà không c n ph i l u ý đi u gì c ,ề ẩ ụ ủ ử ổ ạ ả ầ ả ư ề ả
l i ích c th đợ ụ ể ược ch ng minh m t cách th c nghi m. Đáng le ph i xác đ nhứ ộ ự ệ ả ị
vi c đi u ch nh t i u đ i v i các c a s và các bi u tệ ề ỉ ố ư ố ớ ử ổ ể ượng (thí d v màu s c,ụ ề ắ tính t h p ) trên c s đổ ợ ơ ở ược thi t l p, nó s cho phép ngế ậ ẽ ườ ử ụi s d ng t gi iự ả quy t nh ng gì t t nh t cho mình(thí d vi c dò tìm giao di n ngế ữ ố ấ ụ ệ ệ ười sử
d ng ).ụ
Tuy nhiên, m t vài nguyên t c thi t k c b n đã độ ắ ế ế ơ ả ược đúc k t,chúng đế ượ c
t o ra nh nh ng vi c hạ ư ữ ệ ướng đãn t o d ng, cũng nh , chúng c n đạ ạ ư ầ ược làm đ yầ cho m i giao di n ngỗ ệ ườ ử ụi s d ng, c th v i m t y u t t n t i b thya đ iụ ể ớ ộ ế ố ồ ạ ị ổ
b n ch t c a nó, n u các ch c năng mong mu n đã đả ấ ủ ế ứ ố ược tr giúp b i giao di n.ợ ở ệ
V i Windows 95, ngớ ười ta có th dãn t i nh ng thí d sau đây:ể ớ ữ ụ
Ngườ ử ụi s d ng v i vi c đi u khi n (user in control):ớ ệ ề ể
Ngườ ử ụi s d ng không ch đ i đáp mà còn ph i đi u khi n máy tính.ỉ ố ả ề ể
Đi u y có nghĩa là, ph i th c hi n đi u khi n l i vào công t c m t cách tề ấ ả ự ệ ề ể ố ắ ộ ự
đ ng, mà không c n s d ng tr ng thái giao di n s d ng. Trộ ầ ử ụ ạ ệ ử ụ ường h p khôngợ
c n thi t phai đi vòng, thì tr ng thái này ph i rõ ràng và đầ ế ạ ả ược thoát kh i m tỏ ộ cách d dàng.ễ
S ph n h i (feedback):ự ả ồ
Đ i v i ngố ớ ườ ử ụi s d ng,giao di n ngệ ườ ử ụi s d ng phai đ t s n sàng s h iặ ẵ ự ồ
âm khi nh p d li u hay m t ph n ng nào đó: thí d ph i ch rõ cho ngậ ữ ệ ộ ả ứ ụ ả ỉ ườ ử i s
d ng các phụ ương ti n nhìn th y hay các phệ ấ ương ti n nghe th y; đ t đó,ệ ấ ể ừ
ngườ ử ụi s d ng có th th c hi n nh ng tác đ ng mong mu n c a mình. N uể ự ệ ữ ộ ố ủ ế không, chúng ta s th y tr ng r ng nh m t màn hình ch t; t c là, nó khôngẽ ấ ố ỗ ư ộ ế ứ
ph n nh cái gì c v vi c nh p đã đả ả ả ề ệ ậ ược th c hi n trự ệ ước đó. Dưới đây chúng
ta nêu m t vài ví d :ộ ụ
Con tr chu t (mouse pointer)có th thay đ i hình dáng c a nó trongỏ ộ ể ổ ủ
m t c a s hay trong khi x lý.ộ ử ổ ử
Trang 4 Đ i tố ượng có th thay đ i hình dáng c a nó m t cách đ c tr ng.ể ổ ủ ộ ặ ư
Vi c đi n vào menu không th hi n gì c , n u ngay khi đó nó b ch nệ ề ể ệ ả ế ị ặ
l i.ạ
M t dòng tr ng thái s thông báo m t bộ ạ ẽ ộ ước ti n b b ng hi n th sế ộ ằ ể ị ố hay hi n th text .ể ị
M t c a s chuyên d ng s mô t bộ ử ổ ụ ẽ ả ước thay đ i c a vi c x lý nh làổ ủ ệ ử ư
m t b hi n th c a s thay đ i đó (progress indicator).ộ ộ ể ị ủ ự ổ
M t c a s thông tin s độ ử ổ ẽ ược n y ra (directness visual):ả
Các chương trình x lý d li u bao gi cũng ch a đ ng m t s tử ữ ệ ờ ứ ự ộ ự ươ ng
đương tr c giác gi a các d li u và các ch c năng c n thi t đã đự ữ ữ ệ ứ ầ ế ượ ạ ậ c t o l p
Do v y, m c đích là c n ph i s d ng các phép n d ph bi n (popularậ ụ ầ ả ử ụ ẩ ụ ổ ế metaphor) cho ngườ ử ụi s d ng. Khi đó s bi u th c a ngự ể ị ủ ườ ử ụi s d ng s đẽ ượ cthay đ i m t cách thu n ti n, anh ta hi u: anh ta ch đ i cái gì giao di nổ ộ ậ ệ ể ờ ợ ở ệ
ngườ ử ụi s d ng và v i giao di n này anh ta ph i tác đ ng nh th nào(!).Ngớ ệ ả ộ ư ế ườ i
ta có th s d ng các phép n d khác nhau, khi ngể ử ụ ẩ ụ ười ta mu n m r ng hayố ở ộ
ki n t o thêm các giao di n này. Thí d phép n d ế ạ ệ ụ ẩ ụ work book (s công tác),ổ trong các trang c a s này, ngử ổ ười ta có th đánh s trang, đ a thêm vào hay l yể ố ư ấ
b t đi các b c hình hay các bài text; hay thí d phép n d ớ ứ ụ ẩ ụ pin board (b ngả
hi u) dùng đ mô t các thông tin hay các bài texts gi a m i ngệ ể ả ữ ọ ười
Tính c đ nh(consistency):ố ị
Giao di n ngệ ườ ử ụi s d ng không c n ph i ph n ng m t cách đ t ng tầ ả ả ứ ộ ộ ộ
trước các tình hu ng tố ương t đã quen thu c. Các tác v tự ộ ụ ương t cân thi tự ế
ph i có m t s mô ph ng tả ộ ự ỏ ương t và m t quá trình tự ộ ương t Sau đây, ngự ười ta nêu lên vài ví d :ụ
M t menu mà ngộ ười ta không th l a ch n để ự ọ ược n a, thì không c nữ ầ thi t ph i lo i b ; đ c bi t nó c n thi t đế ả ạ ỏ ặ ệ ầ ế ược ch d n thêm b i vi c t o l p cỉ ẫ ở ệ ạ ậ ố
đ nh.ị
N u t i các v l u an toàn các d li u ng v i m t ti n d ng, các dế ạ ụ ư ữ ệ ứ ớ ộ ệ ụ ữ
li u đệ ượ ưc l u tr ngay l p t c; khi đó; m t t p tin ph i đữ ậ ứ ộ ệ ả ược đ a vào m cư ụ
ch n l a t p tin c a menu; do đó, nó không còn c đ nh n a.ọ ự ệ ủ ố ị ữ
Vi c nh p chu t có th l a ch n m t đ i tệ ấ ộ ể ự ọ ộ ố ượng hay m t t a đ riêngộ ọ ộ
l trong t t v các chẻ ở ấ ả ương trình. N u v a b m nút chu t v a rê chu t, do đó,ế ừ ấ ộ ừ ộ
m t kho ng s độ ả ẽ ược ch n; thí d trong m t text hay trong trọ ụ ộ ường đ h a.ồ ọ
Tính đ n gi n (simplicity):ơ ả
Khi mô t tr c quan, m t s giàn x p ph i luôn luôn đả ự ộ ự ế ả ược tìm th y,ấ
nh m trình di n không quá nhi u mà cũng không quá ít. V cái đó, có nh ngằ ễ ề ề ữ công ngh sau đây đệ ược k t i:ể ớ
Vài l nh hay vài thông báo ng n và súc tích đệ ắ ượ ử ục s d ng
Trang 5 Hi n th ti n b (progress dislosure): Khi các thông tin để ị ế ộ ược d n ra,ẫ
n u nh ng thông tin này là c n thi t, thì đ u tiên, các hàm tế ữ ầ ế ầ ương quan được phô bày m t cách thô k ch au đó, do nhu c u, nó độ ệ ớ ầ ược phô bày m t cách thanh nhãộ
h n hay m t cách chi ti t h n.ơ ộ ế ơ
Tính th m m (aesthetic):ẩ ỹ
M t giao di n không ch đáp ng đ y đ các ch c năng tác đ ng; đ i v iộ ệ ỉ ứ ầ ủ ứ ộ ố ớ
người s d ng, nh ng quan đi m trình bày th m m cũng r t đử ụ ữ ể ẩ ỹ ấ ược coi
gì người ta mu n hố ướng t i và t i sao v y(?).ớ ạ ậ
7.2. C u trúc giao di n ngấ ệ ườ ử ụi s d ng
M t giao di n đ h a ph c t p có th làm cho ngộ ệ ồ ọ ứ ạ ể ườ ử ụi s d ng th c hànhự
m t cách đ n gi n h n đ ph c v cho m t chộ ơ ả ơ ể ụ ụ ộ ương trình ng d ng; nó có thứ ụ ể trình bày m t hàng rào b sung hay làm ph c t p thêm vi c d ch v Trên c sộ ổ ứ ạ ệ ị ụ ơ ở
đó, đi u quan tr ng là ph i thi t k giao di n ngề ọ ả ế ế ệ ườ ử ụi s d ng m t cách kộ ỹ
lưỡng, và m t khác, không đặ ược thay đ i giao di n đã đổ ệ ược d n ra.ẫ
Nh ng yêu c u này, đữ ầ ược th c hi n trự ệ ước nh t, không ph i m i chấ ả ỗ ươ ngtrình đượ ạc t o ra m t giao di n độ ệ ượ ậc l p trình m t cách t m n và đ c đáo, saoộ ỷ ẩ ộ cho nó không ch ti n d ng trong quá kh , mà m t giao di n ngỉ ệ ụ ứ ộ ệ ườ ử ụi s d ng s nẵ sàng được s d ng b i m t h đi u hành. S tác đ ng c n thi t s tr giúpử ụ ở ộ ệ ề ự ộ ầ ế ẽ ợ nhi u ng d ng; thí d bao g m vi c tr giúp xu t nh p nói chung nh các nútề ứ ụ ụ ồ ệ ợ ấ ậ ư
b m ch c năng, chu t, c a s , các m t n xu t nh p Nh ng ch c năng nàyấ ứ ộ ử ổ ặ ạ ấ ậ ữ ứ
được đúc k t l i trong m t giao di n, g i là giao di n đ h a ngế ạ ộ ệ ọ ệ ồ ọ ườ ử ụ i s d ng( graphical user interfice:GUI); các giao di n này đệ ược ngườ ậi l p trình làm phù
h p b i m t giao di n chu n, g i là giao di n l p trình ng d ng (applicationợ ở ộ ệ ẩ ọ ệ ậ ứ ụ programming interfice: API ). hình 7.1 ch ra m t s đ khái quát v d u hi uỞ ỉ ộ ơ ồ ề ấ ệ
l p đ i v i vi c s p x p m t giao di n ngớ ố ớ ệ ắ ế ộ ệ ườ ử ụi s d ng nh th ư ế
Hình 7.1.Giao di n ngệ ườ ử ụi s d ng và t ng quan c u trúc h th ngổ ấ ệ ố
M t v n đ đ c bi t n a cũng độ ấ ề ặ ệ ữ ược đ t ra, n u ngặ ế ười ta mu n gi i thi uố ớ ệ
m t giao di n ngộ ệ ườ ử ụi s d ng đ nh hị ướng đ h a nh m t thi t b đ u cu i v iồ ọ ờ ộ ế ị ầ ố ớ
kh năng đ h a gi i h n.Đi u này đả ồ ọ ớ ạ ề ược th c nghi m v i d án tr ng đi mự ệ ớ ự ọ ể
c a các công ty ché t o thi t b trên th gi i; v i d án này, giao di n ngủ ạ ế ị ế ớ ớ ự ệ ườ ử i s
Trang 6d ng đụ ược tr giúp không ch b i m t v trí làm vi c v i màng hình đ h aợ ỉ ở ộ ị ệ ớ ồ ọ màu; ma f còn v i m t thi t b đàu cu i tr ng đen theo tiêu chu n ASCII. Cácớ ộ ế ị ố ắ ẩ
b đi u khi n trình di n đ t bi t đ m nh n vi c mô t nh ng ch c năng xu tộ ề ể ễ ặ ệ ả ậ ệ ả ữ ứ ấ (d li u) nh vi c t o l p hay vi c th c hi n m t dòng tr ng thái.ữ ệ ư ệ ạ ậ ệ ự ệ ộ ạ
7.2.1. Vi c nh pệ ậ (d li u)ữ ệ
Đ chuy n v n các bài text hay các l nh trong m t máy tính, ngể ể ậ ệ ở ộ ười ta sử
d ng phụ ương pháp chuy n t i qua các nút bàn phím. Nói chung, bên c nh cácể ả ạ
ch cái alphabet thu n khi t, còn t n t i các nút phím b sung đ th c hi nữ ầ ế ồ ạ ổ ể ự ệ
nh ng ch c năng đi u khi n đ c bi t. Bên c nh các nút phím di chuy n (ữ ứ ề ể ặ ệ ạ ể ) và các đi m l u ý v con tr (cursor) làm nhi m v nh p d li u, còn có cácể ư ề ỏ ệ ụ ậ ữ ệ nút phím đ chuy n đ i ch cái l n/nh (Shift và Caps LOCK), các phím đ diể ể ổ ữ ớ ỏ ể chuy n các dong ch lui/t i và nh ng nút phím khác đ th c hi n l nh nh p dể ữ ớ ữ ể ự ệ ệ ậ ữ
li u.ệ
Người ta nh n th y r ng, t ng s liên hi p các nút phím đậ ấ ằ ổ ố ệ ượ ạc t o ra và đượ
mô ph ng b i b vi x lý bàn phím v i b mã s n i b ; b mã này đỏ ở ộ ử ớ ộ ố ộ ộ ộ ượ cchuy n đ i b i b kích t o thi t b c a h đi u hành thành b mã s để ổ ở ộ ạ ế ị ủ ệ ề ộ ố ượ cchu n hóa qu c t chính th c. Cõ l do ngu n g c c a chi c máy tính đ u tiên,ẩ ố ế ứ ẽ ồ ố ủ ế ầ cho nên b ch cái trong máy tínhngày nay d a theo alphabet c a M , chúngộ ữ ở ự ủ ỹ bao g m 128 kí t đã đồ ự ược chu n hóa. B mã s đẩ ộ ố ược mô t v i 7 Bit, nó là bả ớ ộ
mã chu n ASCII (American standard Code for Information Inter change), xemẩ hình 7.2 dở ưới đây
Hình 7.2. B mã hóa các kí t theo chu n ASCIIộ ự ẩ
Ngoài b ng này ra, còn có b mã hóa ssó đả ộ ược ghi chép b ng phằ ương pháp
mô t h đ m th p l c phân (hexa decimal). Gía tr c a 4 Bit đ u tiên đả ệ ế ậ ụ ị ủ ầ ượ c
đi n vào cu i bên trái theo c t th ng; còn giá tr c a 4 Bit ti p theo phía bênề ở ố ộ ẳ ị ủ ế ở trên theo hàng ngang. Hai hàng đ u tiên c a b ng này ch a đ ng nh ng kí tầ ủ ả ứ ự ữ ự
đi u khi n, nh k t thúc vi c nh p EOT, b ghi hàng ngang HT, quay tr l iề ể ư ế ệ ậ ộ ở ạ hàng CR Bây gi , th gi i không ch bao g m B c M , do đó, đi u c n thi t làờ ế ớ ỉ ồ ắ ỹ ề ầ ế
ph i k t h p các kí t c a Châu Âu, nh u,a,x và ê vào trong b mã đang t nả ế ợ ự ủ ư ộ ồ
t i. Đi u đó bu c d n t i m t b mã 8 Bit v i chu n ANSI do t ch c ISOạ ề ộ ẫ ớ ộ ộ ớ ẩ ổ ứ (International Standard Organisation) đ a ra.ư
Tuy nhiên, th gi i không ch d ng l i châu Âu; đi u c n thi t đế ớ ỉ ừ ạ ở ề ầ ế ược d nẫ
t i là ph i mô ta các gói ph n m m khác nhau cho th trớ ả ầ ề ị ường châu Á, nh Vi tư ệ Nam, Trung Qu c, n Đ , Ar p ; do đó, ngố Ấ ộ ậ ười ta ph i m r ng vi c mã hóaả ở ộ ệ cacá kí t nhi u h n 8 Bit.ự ề ơ
Trang 7M t cu c th nghi m quan tr ng theo hộ ộ ử ệ ọ ướng này là vi c phát tri n m t bệ ể ộ ộ
mã đa năng (unicode), trong đó ch a đ ng toàn b các kí t c a các th ti ngở ứ ự ộ ự ủ ứ ế
c a các qu c gia trên th gi i, goi là UNI1997. trong b ng này còn ch a cácủ ố ế ớ Ở ả ừ
ch tr ng, do đó r t ti n l i cho vi c m r ng ti p theo. Hình 7.3 ch ra m t sỗ ố ấ ệ ợ ệ ở ộ ế ỉ ộ ự
d n gi i v b mã đa năng này: b t đ u v i mã 16 Bit 000ẫ ả ề ộ ắ ầ ớ H và k t thúc v iế ớ FFFFH
Hình 7.3. S d n gi i v b mã đa năng(UNI code)ự ẫ ả ề ộ
Người ta nh n th y r ng, b mã đa năng đã đậ ấ ằ ộ ược thi t k nh là s mế ế ư ự ở
r ng b mã ASCII, nh m t o nên m t s hài hòa v i các h thông chu n đangộ ộ ằ ạ ộ ự ớ ệ ẩ
t n t i. Tuy nhiên, có r t nhi u ki u ch (fonts); cho nên, b mã đa năng 16ồ ạ ấ ề ể ữ ở ộ Bit, người ta có th đ m b o đ y đ các font ch , vì các thông tin để ả ả ầ ủ ữ ược tách chia m t cách m nh m , b t kì khi nào và cách s d ng nh th nào đ u ch aộ ạ ẽ ấ ử ụ ư ế ề ứ
đ ng trong b mã này c T t c các thông tin t o d ng (font ch , ki u trìnhự ộ ả ấ ả ạ ạ ữ ể bày, đ m/nghiêng ) đ u đậ ề ược b mã kí t qu n lí m t cách tách bi t; chúng làộ ự ả ộ ệ các ki u dùng cho trình so n th o. B mã đa năng đã để ạ ả ộ ược chu n hóa(ISOẩ 10646) và không ng ng đừ ược phát tri n.ể
B mã quan tr ng n a là b mã Unix nâng cao 32 Bit (Extended Unix Code:ộ ọ ữ ộ EUC);nó gi i thi u m t s m r ng c a ki u kí t theo chu n ASCII dùng choớ ệ ộ ự ở ộ ủ ể ự ẩ
h đi u hành Unix. Các kí t châu Á và các ki u ph c h p khác đệ ề ự ể ứ ợ ược d n raẫ
nh là k t qu c a nhi u ch cái alphabet theo chu n ASCII trên bàn phímư ế ả ủ ề ữ ẩ thông thường và chúng cũng đượ ưc l u tr nh chu n EUC c a các nữ ư ẩ ủ ước đ tặ
vi (LANG, LC_XX), n u chúng tôn ta i trong ph m vi ti n trình ngế ị ạ ế ườ ử ụ i s d ng
và n u chúng đế ược thi t đ t m t cách h p lí; khi đó, chúng đi u khi n ph nế ặ ộ ợ ề ể ầ
c c b các l p th c th vi n (library routine)và các l nh c u h đi uụ ộ ậ ứ ư ệ ệ ả ệ ề hành(ed,grep ) đây, chúng không ch bao hàm các đ c đi m ngôn ng đ tỞ ỉ ặ ể ữ ặ
bi t nh vi c s d ng đúng đ n b mã 32 Bit khi so sánh chu i có t hay nh nệ ư ệ ử ụ ắ ộ ỗ ự ậ
d ng mã ch cái(ch cái l n/nh , ch s , kí t đi u khi n ), mà còn bao hàmạ ữ ữ ớ ỏ ữ ố ự ề ể
c vi c ngs d ng h p lí đ i v i t ng qu c gia cho đi m và d u ph y khi bi uả ệ ư ụ ợ ố ớ ừ ố ể ấ ẩ ể
Trang 8di n s cũng nh đăc đi m ti n t c a t ng nễ ố ư ể ề ệ ủ ừ ước(thí d bi u di n đ ng đôlaụ ễ ễ ồ
ti n t c a M :1.568,74US$).ề ệ ủ ỹ
Thí d v b mã kí t Windows NT:ụ ề ộ ự ở
Ngược v i h đi u hành Unix, Windows NT, khi thi t k b mã kí tớ ệ ề ở ế ế ộ ự nhi u qu c gia trên th gi i, đ i v i h đi u hành, ngề ố ế ớ ố ớ ệ ề ười ta kh ng đ nh r ng,ẳ ị ằ
đó là m t b mã đa năng. Đi u này có nghĩa là t t c các chu i kí t ,tên đ iộ ộ ề ấ ả ỗ ự ố
tượng, tên đường d n đ u ph i dùng b mã kí t đa năng.ẫ ề ả ộ ự
Các đăc tr ng c a t ng qu c gia nh múi gi , ký hi u ti n t , ti ngư ủ ừ ố ư ờ ệ ề ệ ế nói được kh ng đ nh m t cách đ c l p v i cái đó khi t o l p h th ng vàẳ ị ộ ọ ậ ớ ạ ậ ệ ố
đượ ưc l u tr t p trung.ữ ậ
Bên c nh bàn phím dùng đ nh p các kí t , ngày nay còn có nhi u kh năngạ ể ậ ự ề ả
nh p khác n a. Sau đây, ngậ ữ ười ta nêu ra m t vài phộ ương pháp
Các phím ch c năngứ (function key ):
Vi c m r ng đ n gi n d n t i kh năng, đ s d ng các nút phím cho cácệ ở ộ ơ ả ẫ ớ ả ể ử ụ
ch c năng đăc bi t. Đó là m t bứ ệ ộ ước quan tr ngđ i v i vi c thi t k giao di nọ ố ớ ệ ế ế ệ
ngườ ử ụi s d ng, vì đây, bên c nh vi c nh p các d li u b ng s và ch cái,ở ạ ệ ậ ữ ệ ằ ố ữ
vi c làm thích ng các ch c năng cũng đệ ứ ứ ượ ạc t o đi u ki n. Do đó, m t cáchề ệ ộ lôgic, đi u quan tr ng là ph i gi v ng các d li u và các ch c năng đề ọ ả ữ ữ ữ ệ ứ ược tách
bi t trong m t chệ ộ ương trình t i môi trạ ường nh p, và ph i tránh m i s nh mậ ả ọ ự ầ
l n. Ch có m t giao di n ngẫ ỉ ộ ệ ườ ử ụi s d ng t i m i pha t p hai ch c năng, thí dồ ớ ạ ứ ụ
vi c ng ng xu t d li u ph i n hai phím CTRL+S, nhi u khi còn t h n, ph iệ ừ ấ ữ ệ ả ấ ề ệ ơ ả
đi u khi n chề ể ương trình b ng nhi u phím kí t riêng l ằ ề ự ẽ
Thi t b ch thế ị ỉ ị(pointer device):
Có m t bộ ước quan tr ng đ nh p tọ ể ậ ương t , đó là vi c d n vào các thi t bự ệ ẫ ế ị
ch th nh chu t, banh dò (track ball). đay, v trí c a con tr ch th trên mànỉ ị ư ộ Ở ị ủ ỏ ỉ ị hình có th để ược đi u khi n m t cách nhe nhàng h n n các nút phím ch cề ể ộ ơ ấ ứ năng (cursortaste)
Các mâm đò h aọ (graphic tablet):
M t s tr giúp to l n đem l i vi c xác đ nh v trí c a m t bút chì trên m tộ ự ợ ớ ạ ệ ị ị ủ ộ ộ
b ng nh p đi n t đăc bi t. Tuy nhiên, ch c năng c a nó là m t thi t b ch th ,ả ậ ệ ử ệ ứ ủ ộ ế ị ỉ ị
do đó, người ta có th truy n đ t các hình d ng vào máy tính m t cách tr cể ề ạ ạ ộ ự
ti p; thí d các d li u c u các d án ki n t o hay các m u y khoa, các hàmế ụ ữ ệ ả ự ế ạ ẫ
ch c năng và các bi u đ hay có th s d ng các ch kí đ ki m duy t ngânứ ể ồ ể ử ụ ữ ể ể ệ phi u.ế
Trang 9 Thi t b quét hìnhế ị :
Trong vài năm l i đây, các b ng đ h a có đạ ả ồ ọ ược nh vi c áp d ng các thi tờ ệ ụ ế
b dò quang đi n v i đ phân gi i cao, thi t b này g i là máy quét (scaner) hìnhị ệ ớ ộ ả ế ị ọ hay đ h a. Tuy nhiên, cùng v i các khuynh hồ ọ ớ ướng tân ti n khác, các k t quế ế ả quét đ h a không ch đồ ọ ỉ ượ ưc l u tr trên gi y, chúng còn đữ ấ ược bi n đ i thànhế ổ tín hi u đi n đ ph c v nh ng yêu c u c a nghành công ngh thông tin và cácệ ệ ể ụ ụ ữ ầ ủ ệ lĩnh v c khoa h c khác.ự ọ
7.2.2. Mành đ h a và s phân gi iồ ọ ự ả
Đ i v i vi c xu t ra m t b ng phác th o đ h a thố ớ ệ ấ ộ ả ả ồ ọ ường đượ ử ục s d ng m tộ
mô hình đ t bi t, g i là mô hình mành đ h a. Ngặ ệ ọ ồ ọ ười ta s d ng m t h thôngử ụ ộ ệ
t a đ cho các d u v phác; chúng xu t hi n nh m t mành màn hình. Th tọ ọ ấ ẽ ấ ệ ư ộ ậ
v y, ngậ ười ta g i đi m ra(0,0) c a t a đ (x, y) là góc trên bên trái; đó cácọ ể ủ ọ ộ ở ở
d u v t c a các đi m nh đấ ế ủ ể ả ược thu x p gi ng nh m t ma tr n đi m. Đ i v iế ố ư ộ ậ ể ố ớ màn hình có kích c 1024x786 đi m, thì ma tr n t a đ các đi m đỡ ể ậ ọ ộ ể ược d n raẫ
nh trong hình 7.4 dư ở ưới đây
Hình 7.4. T a đ các đi m c a mành đ h aọ ộ ể ủ ồ ọ
Mô hình mành đò h o thì khác v i phạ ớ ương pháp vect đ h a; phơ ồ ọ ương pháp vect đ h a ch quan tâm t i các t a đ c a các đi m hình h c ( thí d đi mơ ồ ọ ỉ ớ ọ ộ ủ ể ọ ụ ể
đ u và đi m cu i c a m t đầ ể ố ủ ộ ường th ng). Ngẳ ượ ạc l i, phương pháp mành đồ
h a phân b m i đi m m t giá tr màu đã đọ ổ ỗ ể ộ ị ược đ nh nghĩa, các giá tr này đị ị ượ c
l u tr nh nh ng con s Khi nh l p l i hình ki u đ h a mành ph i d đ như ữ ư ữ ố ớ ặ ạ ể ồ ọ ả ự ị
trước m t đ n v b nh ; còn trộ ơ ị ộ ớ ương h p vect đ h o ch c n nh t ng đi mợ ơ ồ ạ ỉ ầ ớ ừ ể
nh c a màn hình đ h a. Cho nên tr c đây, ng i ta a chu ng ph ng pháp
vect đ h a, vì phơ ồ ọ ương pháp này s d ng it không gian b nh Tuy nhiên, ử ụ ộ ớ ở
vi c làm tệ ươi (refresh) các đ h a ph c t p, phồ ọ ứ ạ ương pháp vect ph i làm tơ ả ươ i
t t c các ph n t đ h a tong danh sách, do đó, quá trình này x y ra r t ch m;ấ ả ầ ử ồ ọ ả ấ ậ ngoài ra nó còn d n t i nh ng đi m l ch trên b c đ h a v a làm tẫ ớ ữ ể ổ ỗ ứ ồ ọ ừ ươi
Công ngh hi n đ i c a các màn hình mành k t n i v i ki u dáng màn hìnhệ ệ ạ ủ ế ố ớ ể
do ngườ ậi l p trình t ki n t o, đã t o nên ch đ ng v ng vàng cho công nghự ế ạ ạ ỗ ứ ữ ệ thi t k các ph n m m d h a. đây, m i đi m nh đế ế ầ ề ồ ọ Ở ỗ ể ả ược mô t thành cácả màu s c và đắ ược bi u di n b i m t giá tr màu t các Bit, g i là các Bitể ễ ở ộ ị ừ ọ màu(b0,b1, ,bn). Đ i đa s các Bit có th đạ ố ể ược k t h p v i t ng ch s giôngế ợ ớ ừ ỉ ố nhau c a b đi u khi n trình di n (display controler) t i m t b c nh đ h a.ủ ộ ề ể ễ ớ ộ ứ ả ồ ọ
M t b c nh nh v yđộ ứ ả ư ậ ược bi u th m t m c bình di n nào đó.ể ị ộ ứ ệ
Thí d v các m c màn hình ụ ề ứ :
Trang 10Người ta th y r ng, m i đi m nh c a b c đ h a thấ ằ ỗ ể ả ủ ứ ồ ọ ường ch a đ ng trongứ ự
8 Bit ( ng v i m t byte). N u chúng ta phân đoàn 8 Bit này thành 6+2 Bit; v iứ ớ ộ ế ớ
ch đ nh, đ i v i m t ph n m m đ h a, đi u c n thi t là ph i thi t đ t m tủ ị ố ớ ộ ầ ề ồ ọ ề ầ ế ả ế ặ ộ
m t trặ ước (front) kho ng ả 2 6 màu (cho hình nh), còn m t n n(underground)ả ặ ề
ko ng 2ả 2màu. V các l nh ph n c ng, chúng ta có th di chuan các d li u c aề ệ ầ ứ ể ữ ệ ủ
m t m c (đ i v i m t trộ ứ ố ớ ặ ước); cho nên, m t hình(figure) đ h a có th xu tộ ồ ọ ể ấ
hi n và di dich trên m t n n phía sau c đ nh(tệ ộ ề ố ị ương t nh m t phong c nh: xeự ư ộ ả
c chuan đ ng, núi non đ ng yên). Khi trình di n các ph n m m trò ch i (gamé)ộ ộ ứ ễ ầ ề ơ trên máy tính, người ta th y các hình nh chuan đ ng chính là nh ng hình vuôngấ ả ộ ữ
nh t o d ng đỏ ạ ạ ược đi u hề ưởng trên màn hình
Các màu s c đắ ược pha tr n t ba màu c b n là đ (rose), xanh láộ ừ ơ ả ỏ cây(Green) và xanh da tr i (Blue). Vì c k t h p cờ ự ế ợ ường đ ba màu (mm i màuộ ỗ
có 8 Bit)thành m t t ng duy nh t (24 Bit) thì c n dùng quá nhi u Bit; cho nên,ộ ổ ấ ầ ề
đ i v i m t đi m nh c n m t s lố ớ ộ ể ả ầ ộ ố ượng đ ch cề ỉ ường đ ba màu c b nộ ơ ả (R,G,B) thì không c n thi t; mà ngầ ế ười ta ch vi t ch s c a ba màu, g i là đ aỉ ế ỉ ố ủ ọ ị
ch màu(color address) vào trong m t b ng đăc bi t, g i là b ng chi uỉ ộ ả ệ ọ ả ế màu(color lookup table:CLUT). S đ truy c p đ i v i các giá t màu c a m tơ ồ ậ ố ớ ị ủ ộ
đi m nh khi phô di n thì chuan thành đ a ch c a m t m c, tể ả ễ ị ỉ ủ ộ ứ ương t nh đãự ư trình bày trong m c 3.3 chụ ở ương trướ Ởc. hình 7.5 là m t ví d , nó ch ra dngfộ ụ ỉ
d li u cho m t đi m nh có màu tím sáng(bright violet) v i giá tr màu (R, G,ữ ệ ộ ể ả ớ ị B) = (215,175,240) v ttrí (x, y), Ngở ị ười ta l u ý, m i đi m nh ch dùng 3 Bitư ỗ ể ả ỉ
c a không gian b nh ; nh ng v đ chính xác mau ph i dùng t i 24 Bit. Sủ ộ ớ ư ề ộ ả ớ ự
h n ch c a vi c mô t các đi m nh trên 3 Bit không ch tác đông t i đ chínhạ ế ủ ệ ả ể ả ỉ ớ ộ xác màu(color accuracy), mà còn tác đông t i ch s l n nh t trong b ng chi uớ ỉ ố ớ ấ ả ế màu CLUT; vì v y, nó cũng nh hậ ả ưởng t i s lớ ố ượng các màu có th để ược trình bày đông th i.ờ
Đ trình bày các giá tr màu (R, G, B) d ng s thành các giá tr màu tể ị ở ạ ố ị ươ ng
đương d ng tở ạ ương t ; khi đó, ngự ười ta dùng m t b bi n đ i đi n t s /ộ ộ ế ổ ể ử ố
tương t (D/A converter); thí d các giá tr màu 0 255 tự ụ ị ương ng v i cácứ ớ
m c đi n áp 0,0 1,0 volt; v i các giá tr này, các ngu n t o màu(thí d ngu nứ ệ ớ ị ồ ạ ụ ồ
đi n quang) đệ ược đi u hề ưởng
Hình 7.5. Xác đ nh giá tr màu nh b ng chi u màuị ị ờ ả ế
Tuy nhiên , ý tưởng này v n còn nhẩ ược đi m trong các vùng đi m nh.ể ể ả
Nh ng nh hữ ả ưởng c a các ch c năng thì ph thu c r t nhi u vào ph nủ ứ ụ ộ ấ ề ầ
c ng( t c là s phân gi i c th c a màn hình). đây, các ô hình vuông nh vàứ ứ ự ả ụ ể ủ Ở ỏ các c a s nói chung đử ổ ươch phân gi i m t cách phù h p v i kích thả ộ ợ ớ ước màn hình; c th , nó không ph i là cac nét v liên t c đ y đ , kà nó ch là nh ngụ ể ả ẽ ụ ầ ủ ỉ ữ
kh i đi m nh đố ể ả ược xác đ nh theo mong muôn c a ngị ủ ườ ậi l p trình. Bây gi ,ờ
Trang 11n u chúng ta pha l n đ h a và bài text (bao g m các kí t ); do đó, v trí c a bàiế ẫ ồ ọ ồ ự ị ủ text tong c a s đ h a ph thu c vào đ phân gi i c a màn hình; khi đó cóở ử ổ ồ ọ ụ ộ ộ ả ủ
th d n t i các hi u qu c a b ng thi t k nói chung không để ẫ ớ ệ ả ủ ả ế ế ược cân đ i vàố
đ p đ ; đ ng th i, nó cũng gây tr ng i cho m t giao di n c a ngẹ ẽ ồ ờ ở ạ ộ ệ ủ ườ ử ụ i s d ngsau này
Hình 7.6. Mô t cách th c hi n m t b ng đ h aả ự ệ ộ ả ồ ọ
M t quy t đ nh quan tr ng đ d n t i các nét v đ nh hộ ế ị ọ ể ẩ ớ ẽ ị ướng đi m nh làể ả nét v phân gi i. các net v này, ch ng h n m t ch cái thì không đăc tr ngẽ ả Ở ẽ ẳ ạ ộ ữ ư
b i các đi m nh c a nó, mà nó đăc tr ng b i hình biên và màu s c cung nhở ể ả ủ ư ở ắ ư
c u trúc(texture) di n tích ch a đ ng các đi m nh. Đi u này thì trấ ệ ứ ự ể ả ề ước h t làế
b t ti n và không hi u ngh khi l u tr x và trình bày; tuy nhên, khác v i trấ ệ ệ ệ ư ư ớ ườ ngcác đi m nh, vi c mô t để ả ệ ả ương biên được phóng to hay thu nh m t cách b tỏ ộ ấ
kì. Hình7.6 cho th y: bên trái mô t đ nh hấ ả ị ướng các đi m nh (a); bên ph i môể ả ả
t m c đ phân b cho ch A (b). Do đó, nh ng đi m nh mà ngả ứ ộ ổ ữ ữ ể ả ười ta nhìn
th y, nó v n còn thô k ch.ấ ẫ ệ
7.2.3. H th ng c a s và qu n lý trình di nệ ố ử ổ ả ễ
M t trong các phộ ương ti n trình bày quan tr ng nh t đệ ọ ấ ược h th ng các máyệ ố tính XeroxSTART đ m nhi m, đó là s bi u th các d li u trong các m t c tả ệ ự ể ị ữ ệ ặ ắ hình vuông c a màn hình hay trong các c a s Ngày nay, k thu t này đã trủ ử ổ ỷ ậ ở nên ph dung t t c các máy tính; nó d n t i kh năng ph i xác đ nh đ a chổ ở ấ ả ẫ ớ ẳ ả ị ị ỉ
b nh l p nh c a m t đ n v bi u th (thí d thi t b đ u cu i, màn hình độ ớ ậ ả ủ ộ ơ ị ể ị ụ ế ị ầ ố ồ
h a ); do đó, c n ph i lái vi c xu t c u trúc t vi c a m t ti n trình trên m tọ ầ ả ệ ấ ấ ế ủ ộ ế ộ
ph n đầ ược d ch v xác đ nh c a màn hình. N u trị ụ ị ủ ế ước đây các chu i ký tỗ ự
được d n ra b i m t ký t đ c bi t (thí d ESC ) thì đ ng th i chúng cũng đ tẫ ở ộ ự ặ ệ ụ ồ ờ ạ
được m t l nh cho b vi x lý trình di n; do đó, đi u này đã độ ệ ộ ử ễ ề ược thay th t iế ạ các h th ng c a s nh các ch c năng t ng h p; đó, các s li u c a s (kíchệ ố ử ổ ờ ứ ổ ợ ở ố ệ ử ổ
thước, v trí, m t c t ) có th đị ặ ắ ể ược thay th m t cách tế ộ ương tác nh các thi tờ ế
b nh p (chu t, c n lái ). ị ậ ộ ầ
C u trúc ti n trình c a m t ng dung đ h a đã đấ ế ủ ộ ứ ồ ọ ược bi n đ i khôngế ổ
ng ng. N u trừ ế ước đây, chương trình ng dung còn ch a đ ng t t c các th t cứ ứ ự ấ ả ủ ụ
xu t đ h a nh là m t th vi n (xem hình 7.7); do đó, ngày nay h u nh đi uấ ồ ọ ư ộ ư ệ ầ ư ề này đã được tách bi t. ệ
Hình 7.7.*******************
Công vi c trình di n nh xác đ nh v trí chu t, kích chu t, d n m t bàiệ ễ ư ị ị ộ ộ ẫ ộ text được qu n lý b i m t ti n trình xác th c hay b i m t c a s đi u hànhả ở ộ ế ự ở ộ ử ổ ề
Trang 12(Window manager), (xem hình 7.8). C hai ti n trình sau đây đả ế ược k t n i v iế ố ớ nhau theo ki u quan h client/ server: ti n trình ngể ệ ế ườ ửi s dung đ i di n cho m tạ ệ ộ client, còn ti n trình c a c a s đi u hành đ i di n cho m t server v i s trìnhế ủ ử ổ ề ạ ệ ộ ớ ự
di n các đ h a mong mu n. ễ ồ ọ ố
Do đó, vi c qu n lý đệ ả ược thi t k m t cách căn b n nh m t chế ế ộ ả ư ộ ương trình
l p đi l p l i; mà t i đó, các ho t đ ng đặ ặ ạ ạ ạ ộ ược th c hi n nh m t ph n ng khiự ệ ư ộ ả ứ trình di n c a ngễ ủ ườ ửi s dung.
H th ng các ti n trình c a s g n nh đệ ố ế ử ổ ầ ư ược đi u khi n m t cách bi n đ i,ề ể ộ ế ổ
mà đó, cũng gi ng nh các bi n c không đ ng b , không ch các vi c trìnhở ố ư ế ố ồ ộ ỉ ệ
di n đễ ược th c hi n t bên ngoài (nh p chu t ), mà c các công vi c đ h aự ệ ừ ấ ộ ả ệ ồ ọ
c a chủ ương trình ng dung cũng đứ ược th c hi n t bên ngoài. đây, h th ngự ệ ừ Ơ ệ ố các bi n c trao đ i thông tin nh n đế ố ổ ậ ượ ự ợc s tr giúp, cho nên nó đã đem l i sạ ự trình di n và các nhi m v khi t o d ng thông tin; và do đó, nó cũng móc n iễ ệ ụ ạ ự ố vào hàng đ i trung tâm c a c a s qu n lý.ợ ủ ử ổ ả
Vi c phân b các ch c năng gi a chệ ổ ứ ữ ương trình người s dung và c a sử ử ổ
qu n lý làm yêu c u thêm v vi c tách chia các nhi m v m t cách rõ ràng; ả ầ ề ệ ệ ụ ộ ở
đó gi a các nhi m v chu n c a c a s qu n lý (các nhi m v c a giao di nữ ệ ụ ẩ ủ ử ổ ả ệ ụ ủ ệ
ngườ ử ụi s d ng) và các y u t đ h a đ c bi t c a chế ố ồ ọ ặ ệ ủ ương trình ngườ ửi s dung
được phân bi t v i nhau, t c chúng có nh ng u đi m khác nhau nh sau:ệ ớ ứ ữ ư ể ư
Các k t qu c a nhi u ti n trình đ c l p có th đúc k t trong m t hế ả ủ ề ế ộ ậ ể ế ộ ệ
th ng cố ưả ổ s nói chung; do đó, chúng được làm sáng t t hai ví d sau đây:ỏ ừ ụ
K t qu do các b c m bi n (sensors) khác nhau trong đi u khi n côngế ả ộ ả ế ề ể nghi p thì khác nhau.ệ
Vi c mô t song song các k t qu t i nhi u chệ ả ế ả ạ ề ương trình v i ch c năngớ ứ
gi ng nhau thì đ chính xác l i ph n m m s muôn màu muôn v ố ộ ỗ ầ ề ẽ ẽ
H th ng trình di n đ h a có th đệ ố ễ ồ ọ ể ược chuan d ch trên các máy tínhị khác nhau trong m ng máy tính, xem m c 7.2.5. dở ạ ụ ở ưới đây. Đi u này t o raề ạ
nh ng ch c năng sau đây:ữ ứ
Trang 13 Ki m tra m ng: trên m i máy tính t n t i m t ti n trình đ i di n (agent);ể ạ ỗ ồ ạ ộ ế ạ ệ trong s đ c l p v i m t chự ộ ậ ớ ộ ương trình trung tâm, ti n trình đ i di n nàyế ạ ệ
bi u th tr ng thái c a máy tính trong m t c a s riêng l ể ị ạ ủ ộ ử ổ ẻ
Qu n lý m ng: vi c phân b và qu n lý các ph n m m có th đả ạ ệ ổ ả ầ ề ể ượ ổ c t
ch c b i m t không gian làm vi c t p trung; trong đó, c th trên m iứ ở ộ ệ ậ ụ ể ỗ máy tính có m t ti n trình làm cân b ng thi t b đ u cu i t n t i nhộ ế ằ ế ị ầ ố ồ ạ ư
m t ti n trình đ i di n; mà ti n trình này phô bày vi c xu t d li u trênộ ế ạ ệ ế ệ ấ ữ ệ màn hình trình di n trung tâm.ễ
Vi c qu n lý c a s đệ ả ử ổ ược đi u ch nh t p trung; còn đ i v i m t áp dung,ề ỉ ậ ố ớ ộ
vi c nhìn th y và c m nh n (look and feel) thì gi ng nhau.ệ ấ ả ậ ố
Vi c s lý các bi n c có th đệ ử ế ố ể ược chuan giao cho m t h th ng conộ ệ ố (ch ng h n cho m t server); và do đó, nó làm gi m ph t i cho b vi x lý cuẳ ạ ộ ả ụ ả ộ ử ả các ng dung m t cách th c th ứ ộ ự ụ
Ý tưởng này có nghĩa r ng, tr ng thái hi n hành c a m t c a s thì khôngằ ạ ệ ủ ộ ử ổ
ch quen thu c đ i v i chỉ ộ ố ớ ương trình ngườ ửi s dung; mà còn cho th y, các giá trấ ị
c a các bi n tr ng thái (nh v trí c a s , kích thủ ế ạ ư ị ử ổ ước c a s ) ph i đử ổ ả ượ ạ ct o
l p m t cách rõ ràng b i m t server.ậ ộ ở ộ
Các c a s có th x p ch ng lên nhau ho c có th b che ph t ng ph n.ử ổ ể ế ồ ặ ể ị ủ ừ ầ
Đ i v i các ph n không đố ớ ầ ược bi u th c a các c a s , có hai ý ki n:ể ị ủ ử ổ ế
M t là, cộ ưả ổ ượ s đ c server l u tr , do đó, k t khi c a s đư ữ ể ừ ử ổ ược m raở cho t i khi m t ph n cớ ộ ầ ưả ổ ị s b che ph (thí d khi m r ng m t c a s , hay khiủ ụ ở ộ ộ ử ổ
di chu en c a s ch ng lên trên) thì n i dung c a s đỷ ử ổ ồ ộ ử ổ ược đi n vào m t cách tề ộ ự
đ ng. Đi u này đòi h i nhi u dung lộ ề ỏ ề ượng b nh đ i v i tíên trình server;ộ ớ ố ớ
nh ng, nó tránh đư ược các th t c b sung đ đi n vào n i dung c a s cònủ ụ ổ ể ề ộ ử ổ thi u trong chế ở ương trình ngườ ửi s dung
Hai là, trong trường h p có nhu c u, chợ ầ ương trình ng dung ph i bi uứ ả ể
th các ph n c a s còn thi u m t cách m i m Đi u này đòi h i dung lị ầ ử ổ ế ộ ớ ẻ ề ỏ ượ ng
b nh ít h n, vì v y, ngộ ớ ơ ậ ười ta có th s dung các th t c chuyên dung ể ử ủ ụ ở
chương trình ngườ ửi s dung. Cho nên, nó d n t i m t s c ch u t i đ ng h c caoẫ ớ ộ ứ ị ả ộ ọ
h n cho b vi s lý ngơ ộ ử ườ ửi s dung
Vi c th c thi c th thì ph thu c vào h thông c a s đệ ự ụ ể ụ ộ ệ ử ổ ượ ửc s dung. N uế
người ta phó m c quy t đ nh này cho c u hình t n t i trong th i gian làm vi cặ ế ị ấ ồ ạ ờ ệ
c a server(t o l p vi c l u tr ) hay cho ngủ ạ ậ ệ ư ữ ườ ậi l p trình ngườ ứi ng dung; do đó,
có th xu t hi n trể ấ ệ ường h p, khi l p trình ng dung cũng nh khi l u tr trênợ ậ ứ ư ư ữ server, nó s đẽ ược gi m thi u và do đó, vi c ng dung s x y ra l i vùng c aả ể ệ ứ ẽ ả ỗ ở ử