banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows Direct X10 và những điều chưa biết . Phần 1  XML
  [Question]   Direct X10 và những điều chưa biết . Phần 1 29/12/2007 06:38:58 (+0700) | #1 | 106693
[Avatar]
neo_hack
Member

[Minus]    0    [Plus]
Joined: 07/02/2007 19:06:57
Messages: 280
Offline
[Profile] [PM] [WWW] [Yahoo!]
Chào anh em Forum . Bài viết hôm nay xin giới thiệu cho anh em những điều chưa biết về thư viện đồ họa Direct X10 .
Bài viết này do chính tay tôi xoạn trong giờ nghỉ giao tiết nên nếu ai có Copy và Pase thì xin đừng quên dòng " SON TUNG Copyright 2007" . Cảm ơn anh em trước .

Nếu bạn quan tâm hoặc là đã từng nghe nói đến Windows Vista chắc chắn không ai chưa từng nghe đến Phiên bản mới của thư viện đồ họa Direct X . Đó chính là Direct X10.0 .
Phiên bản này được Microsoft quản cáo tùm lum và cho rằng nó được chế tạo theo xu hướng hoàn toàn khác so với các phiên bản trước với khả năng sử lý đồ họa đa luồng mạnh mẽ . Có đúng như vậy ? . Chúng ta cùng xem xét từng khía cạnh .
Mở đầu là thông tin có vẻ hơi thừa nhưng có lẽ nhiều người chưa biết .
Direct X là thư viện đồ họa trên Windows , nó có tác dụng hỗ trợ cho Windows truy cập đến tài nguyên của Card đồ họa và nói chung là các thiết bị sử lý đồ họa . Nhiều người cho rằng Windows có thể trực tiếp giao tiếp với tài nguyên đồ họa của VGA , thực chất không đúng vì Windows chỉ có thể giao tiếp với Card đồ họa nhờ có thư việ Direct X . Trái lại trên các Hệ điều này nền DOS và chính hệ điều hành DOS , có thể trực tiếp truy cập tài nguyên sử lý đồ họa và cụ thể ở đây là Card màn hình . Chính vì thế phiên bản Direct X đầu tiên ra đời cùng phiên bản Windows sơ khai nhất Windows 95 . Theo kiến thức mờ nhạt của tôi thì Phiên bản Direct X 1.0 xuất hiện 2 tháng sau khi Windows 95 phát hành tức là vào khoảng tháng 9 năm 1995 .
Cho tới nay thư viện đồ họa Direct X đã trở nên không thể thiếu trên hệ điều hành Windows . Đôi khi chúng ta chỉ quan tâm đến phiên bản hệ điều hành và sức mạnh của Card đồ họa mà không hề quan tâm đến Direct X . Vì thực tế từ năm 1995 đến nay Direct X đã trải qua nhiều lần nâng cấp . Direct X 1.0 -> 1.4 -> 2.0 -> 2.0E -> ..... -> và đến thời điển bài viết này của tôi vào lò thì phiên bản mới nhất là Direct X 10.0 .
Nói về cấu tạo của Direct X thì rất khó khăn vì nó chứa rất nhiều thứ mà tôi cho rằng ngay cả một lập trình viên hạng chung hay một người am hiểu máy tính cúng khó có thể hiểu cặn kẽ về nó .
Chúng ta thử hình dung nếu hệ điều hành Windows không có Direct X thì sẽ như thế nào . ví dụ hay gặp nhất là khi chúng ta mới kết thúc quá trình cài đặt hệ điều hành Windows mà bộ máy của bạn toàn những phần cứng độc hoặc là một Linh kiện rời và phiên bản Windows đó không có trình điều khiển ( Driver ) cho nó .cụ thể ở đây là chưa có Driver cho card đồ họa . Windows không thể nhìn thấy Card màn hình và khai thác nó . Các bạn sẽ cảm thấy thất vọng tràn trề khi cấu hình máy tính mạnh mẽ mà chạy với tốc độ tệ hại , hình ảnh thể hiện và độ phân giải màn hình quá tệ . hơn nữa khi duyệt qua các cửa sổ và kéo thanh quận có cảm giác giật tung ..... đó chính là biểu hiện của Hệ điều hành không giao tiếp với Card đồ họa được .
Direct X mở ra cánh cửa đồ họa cho hệ điều hành Windows , hiện nay không chỉ phục vụ cho quá trình sử lý đồ họa mà còn là pương tiện đắc lực cho công việc lập trình đồ họa và Lập trình Games .
Direct X10.0 có những cải tiến mạnh nào ? .
Từ trước khi có sự ra đời của Direct X 10.0 thì việc các Games lập trình và chạy trên nền Direct X cũ như .... Direct X8 , Direct X9 và Direct X9.0Ex . thì xu hướng sử lý đồ họa hoàn toán có rất ít cải tiến và gần như giống nhau nên các Games dễ dàng chạy trên nhiều phiên bản Direct X đó . Với Direct X10.0 thì khác . kiến trúc của nó thực sự là hoàn toàn khác so với các phiên bản trước . nên xu hướng lập trình và thiết kế các Games cũ chắc chắn phải thay đổi hầu như hoàn toàn cách phát triển mới có thể chạy trên nền Direct X10 và khai thác hết sức mạnh của nó . Chắc chắn sẽ có sự khác biệt rất lớn giữa Direct X10 và các phiên bản trước đó và các Games cũng không ngoại lệ . Nếu bạn là một người lập trình Games thì chắc chắn sẽ đau đầu để có thể cho sản phẩm của mình có nhãn " Direct X10 Ready " .
Nhưng khi đã có thể đáp ứng tương thích với Direct X10 thì sản phẩm thực sự khác biệt và nổi trội hơn hẳn . Điều này cũng lý giải phần nào tạo sao Direct X10 chỉ có thể chạy trên Windows Vista nhưng Windows Vista có thể chạy trên những phiên bản Direct X cũ . Nhiều trướng hợp thấy quảng cáo Direct X10 dầm dộ liền đi tìm và Download về cài trên hệ điều hành Windows Xp của mình và kết quả thu được thực sự ngoài mong đợi đó là " công cốc " smilie .
Ngay cả Windows Vista nếu bạn dùng Main board có VGA tích hợp như ... GMA 950 . GMA X3100 .. bạn chỉ nhận được Phiên bản Direct X9.0 nếu bạn cài các phiên bản Vista phổ thông và hạng chung như Windows Vista Strarter , Home Basic , Home Premium ngay cả Business mà chỉ có khi cài bản Ultimate vì đơn giản Chỉ Ultimate mới có thể thích ứng mạnh mẽ nhất với Direct X10.0 . tuy vậy bạn vẫn có thể cài nó trên các bản Windows Vista trên , và cũng xin nói lại một điều quan trọng " Direct X10.0 chỉ có thể chạy trên Windows Vista vào thời điểm này " .
Direct X10.0 được thiết kế trên kiến trúc hoàn toàn mới . Vậy tại sao nó vẫn có thể chạy được các ứng dụng chạy trên nền Direct X cũ hơn ? .
Điều này hoàn toàn có thể vì Direct X10.0 thực chất nó chứa trong nó 3 phiên bản Direct X đó là Direct X9.0 , Direct X9.0Ex và Direct X10 . vì lý do các ứng dụng cũ chưa thể hoàn toàn cải tiến để tương thích với Direct X10.0 .
Đó là vấn đề hệ điều hành nào có thể chạy Direct X10.0 còn các VGA thì sao ?
Tất nhiên Direct X10.0 là phiên bản mới -> cần có GPU mới để VGA có thể sử dụng thư viện đồ họa mới này .
Hiện nay theo tôi biết đã có những Phiên bản GPU mới tương thích với Direct X10.0 trên các hãng nổi tiếng như Geforce 8800 của nVIDIA và 2900 TX của ATI trở nên . Nhưng như anh em cũng biết , để sở hữu những GPU này anh em cần có túi tiền " Đầy đặn " . điều này chắc ít anh em SV có được .
Tôi xin lấy dẫn chứng với một con Geforce PCX 8800GTS 512MB - 256 Bit thuộc loại giá cuối bảng cũng khoảng 5.5 -> 5.7 triệu đồng với một số anh em thì số tiền này có thể sắm cả một bộ Case đầy đủ và mạnh mẽ .
Nói nhiều như vậy smilie Vậy những cải tiến của Direct X10.0 là gì ? .
Direct X10.0 nổi bật ở 2 cải tiến mạnh mẽ ( Ở Core 2 Duo là 5 ) . Xin trình bày sơ qua những cải tiến này cho anh em hay . smilie
* Number One : WDDM ( Windows Display Driver Model ) . Anh em có thể hiểu là điểu khiển và trình bày ứng dụng ở nhiều chế độ .
Đây chính là thứ đáng giá nhất của phiên bản mới này . Vậy cải tiến này có ích sao đây ? .
Nếu bạn là dân yêu thích công nghệ chắc chắn đã nghe nói đến sức mạnh sử lý đa luồng của Core 2 Duo nhờ kiến trúc đa lõi chia sẻ sử lý . Ở Direct X10.0 cũng tương tự như vậy . cải tiến này chính là giúp GPU sử lý cùng lúc nhiều luồng dữ liệu ( Đa luồng ) nhờ công nghệ " Ảo hóa " tài nghuyên của chính GPU , tức là nhiều ứng dụng có thể truy xuất vào cùng một đơn vị bộ nhớ của VGA trong cùng một đơn vị thời gian , như kiểu Core 2 Duo sử lý nhiều tập lệnh cùng lúc . Thực chất là tài nguyên chỉ có một và được ảo hóa lên nhiều cấp tùy thuộc vào nhu cầu sử lý đồ họa khác nhau , tất nhiên điều này là có hạn . Nghuyên nhân khiến Giật máy khi chơi Games và sử lý đồ họa 3D quá nặng chính là Tài nghuyên GPU chỉ có một nhưng cùng có quá nhiều ống lệnh cần sử lý -> quá tải -> tình trạng ưu tiên cho ống lệnh được gửi đến muộn nhất và thậm chí bỏ qua ống lệnh đang sử lý , số còn lại cần có thời gian chờ hoặc không thể sử lý -> Giật . Chính vì tình trạng tài nguyên chỉ có một nhưng nhu cầu lại quá nhiều ( Cung quá cầu ) làm hạn chế nhiều khi chơi Games 3D . Không chỉ vậy khi sử lý chuyên những ứng dụng 3D nặng thì Direct X10.0 tiếp tục phát huy khả năng bằng cách có thêm những công nghệ riêng biệt của từng dòng IT cùng như Geforce . Những công nghệ này được những nhà sản xuất tích hợp chỉ trên những VGA của họ .
Tuy còn mới nhưng công nghệ WDDM đã nên đến phiên bản 2.0 ( theo tôi được biết sắp ra mắt phiên bản 2.1 ) . được thiết kế để tận dụng tối đa sức tài nguyên từ Windows Vista .
Tôi xin lấy một ví dụ rất đơn giản và thực tế để anh em có thể hiểu kỹ hơn về khả năng sử lý đa luồng của VGA .
Bản chất của các thiết bị ngoại vi là những mạch Logic ( 0 - 1 ) . các thiết bị ngoại vi khác nhau , có cơ chế hoạt động khác nhau ,và tất nhiên là các mạch logic cũng khác nhau . VGA cũng không ngoại lệ cũng chính là những mạch logic rất phức tạp được sản xuất hàng loạt và thường được gọi là các IC bán dẫn . Mỗi một VGA có rất nhiều mạch logic làm những nghiệm vụ khác nhau và chúng được liên kết trên cùng một Main điện tử được gọi là Card . Anh em để ý trên các VGA thường có những vi mạch màu đen thường là hình trữ nhật , có rất nhiều chân xung quanh và có nhiều con số khó hiể ghi trên mặt trên . Đó chính là những mạch Logic hay còn gọi là IC điện tử . Những mạch này sử dụng những cổng logic AND , OR , NOT , NAND , XNOR , XOR .. và các cổng mở rộng khác . chúng được thiết kể làm sao khi tín hiệu vào có là sao đi chăng nữa thì tín hiệu ra chỉ là một kết quả duy nhất hoặc nhiều kết quả nhưng có chung yêu cầu càn thiết , một số khác lại dùng để phân biệt loại tín hiệu vào và trả về những kết quả khác nhau từ đó thiết bị có thể phân biệt được loại tín hiệu đầu vào . và tiếp tục sử lý . Những mạch này cấu thành nên những thiết bị phần cứng .
Vì sao lại là những mạch Logic , vì ngôn ngữ của máy tính chính là hệ đếm cơ số 2 ( Nhi phân ) . Máy tính chỉ làm việc chủ yếu trên hệ nhị phân nhưng chúng ta lại sử dụng hệ đếm cơ số 10 . Đôi khi chúng ta hiểu đơn giản. Khi nhập một phép tính vào máy và máy tính tính như chúng ta tính và hiện kết quả ra bên ngoài , Thực chất phức tạp hơn vì Khi nhập phép tính vào , máy tính sẽ tự hiểu là hệ cơ số 10 và chuyển nó sang hệ đếm cơ số 2 sau đó tiến hành các phép tính yêu cầu trên hệ đếm nhị phân , tất nhiên kết quả thu được là hệ nhị phân , sau đó chuyển kết quả sang hệ thập phân ( cơ số 10 ) . và hiển thị ra màn hình . tuy quá trình khá phức tạp nếu phép tính lớn và phức tạp , nhưng tốc độ của máy tính là rất lớn , nó có thể thực hiện hàng tỉ phép tính trên s . nên kết quả chúng ta nhận được gần như là ngay lập tức ....
Thông thường Các mạch Logic được dùng nhiều loại cổng và ví dụ ở đây tôi xin lấy mạch logic sử dụng 3 cổng AND 2 đầu vào . như hình dưới .


Nhúng hình:


Quan sát hình trên anh em có thể thấy để ra được kết quả và xuất ra OUT-PUT chúng ta cần 2 đơn vị thời gian .
Nhưng anh em hãy quan sát hình dưới đây .

Nhúng hình:


Mạch này cho cùng một kết quả nhưng chỉ mất 1 đơn vị thời gian , là vì trong cùng một đơn vị thời gian thứ nhất mạch thực hiện được tới 2 phép tính cùng lúc . đó chính là khả năng sử lý đa nghiệm . Nhưng vì sao những mạch đa nghiệm này cho tới ngày nay mới được phát triển ? . Vì Những hệ máy tính cũ chỉ có thể thực hiện công việc trên các mạch sử dụng các cổng 2 đầu vào . Nhưng quan sát ở hình 2 thì những mạch mới có thể thực hiện trên các cổng có nhiều hơn 2 đầu vào và thời gian sẽ được rút ngắn đi nhiều . Đó chính là yếu tố nâng cao được tốc độ phần cứng và khả năng sử ký nhiều luồng dữ liệu bằng cách cùng lúc tính được nhiều phép tính dùng cổng logic nhiều hơn 2 đầu vào tức là cùng lúc có thể chạy nhiều mạch hình 2
Tiếp tục sang chuyên mảng Card màn hình .
Number TWO : API . Đối với anh em lập trình thì xin thứ lỗi cho tôi hướng dẫn những người chưa biết về nó smilie . ( Miễn bàn )
API là các hàm dùng trong lập trình Hệ điều hành . Nó giúp Hệ điều hành có thể giao tiếp với Phần cứng và khai thác chúng .
Capability Bit ( Cap-bit ) Chính là nâng cấp lớn nhất trong các hàm thư viện API . Cap-bit này tuy có vẻ hơi ít nghe tên nhưng chúng thực sự là điều không thể thiếu khi sản xuất Card màn hình . Cap-bit chỉ là một hướng phát triển mới của API . Mỗi GPU thường thường có Cap-bit khác nhau . nên những Games lớn thường phải sưu tầm đầy đủ những Cap-Bit này để đảm bảo Games của họ có thể chạy tốt trên hầu hết các Card màn hình . đây cũng chính là lý do lớn khiến các nhà lập trình Games điêu đứng và mất thời gian nhất . Hai dòng GPU lớn trên thế giới hiện nay là IT và nVIDIA thường có những điểm mạnh khác nhau mà loại kia không có đó phần nhiều cũng do Cap-bit . Chính vì lý do này mà các Games khi được phát hành thường đi kèm theo cấu hình " đề nghị " của máy tính trong đó chỉ ra chính sác loại VGA mà họ khuyên người dùng nên chọn vì Games đó được thiết kế để tận dụng tối đa tài nguyên của VGA đó . một điều nữa không chánh khỏi là trên các VGA mạnh thường có ghi những công nghệ mới , đáp ứng tốt cho phần mềm nào . GAMES nào .... đó chính là những điểm mạnh riêng của từng GPU . Việc không đồng bộ API này gây ra hiện tượng một VGA sử lý tốt và đạt điểm cao với GAMES này nhưng lại thấp với GAMES khác còn VGA khác lại ngược lại . Nhu cầu đặt ra ở đây chính là VGA mạnh trên tất cả các ứng dụng và GAMES . Như vậy điều tất yếu là Cap-bit và cấu hình GPU phải được thống nhất . Nhưng điều này là không tưởng , trừ khi Một trong hai hãng sản xuất IT và nVIDIA chịu bỏ quộc để lại thị phần cho hãng kia smilie . Như vậy chỉ còn cách đơn giản đi phần Cap-bit và hướng nó vào một chuẩn mới của hệ điều hành và Direct X10.0 , khiến cho các nhà xản xuất phải hướng tới cùng một chuẩn đó và tất nhiên là yêu cầu thống nhất được thực hiện . đó chính là cải tiến của Direct X10.0 .




[Up] [Print Copy]
  [Question]   Re: Direct X10 và những điều chưa biết . Phần 1 30/12/2007 23:15:45 (+0700) | #2 | 107051
Gygabyte
Member

[Minus]    0    [Plus]
Joined: 17/12/2007 18:51:22
Messages: 3
Offline
[Profile] [PM]
neo- hack ơi! tui góp ý kiến nha. những bài vớ vẫn này đừng post lên nửa. hôm qua bro vua postreply bên WINDOW SP3
(Warning :

1 là VnExpress nói điêu hoặc là bạn nhầm .
Windows XP sp 3 không phải của Microsoft mà là của ấn độ .
Source của hệ điều hành XP sp2 bị lộ + vài chỉnh sửa + dấu mặt = Windows Xp Sp 3 .
Lời khuyên là không nên cài cái này . rất nhiều Spyware , troj , virus và những phần mềm quái dị .
nó không phải là bản chính thức cải tiến lớn nhất chính là ăn cắp giao diện của Vista .
Tôi đã Test thử thì kết quả như sau .
Hệ thống chạy chậm + phát hiện nhiều gián điệp + thay đổi thói quen dùng Windows ..... )--->>>>>>>
******KHÔNG BIẾT CÁI GÌ LUÔN********
NẾU MUỐN CÂU BÀI THÌ PHẢI CỐ HỌC NỬA ĐI. KHÔNG CẦN THỂ HIỆN NHƯ VẬY ĐÂU! THANK



[Up] [Print Copy]
  [Question]   Re: Direct X10 và những điều chưa biết . Phần 1 31/12/2007 02:11:21 (+0700) | #3 | 107085
Lao nong
Member

[Minus]    0    [Plus]
Joined: 18/11/2005 11:46:54
Messages: 50
Offline
[Profile] [PM]

Gygabyte wrote:
neo- hack ơi! tui góp ý kiến nha. những bài vớ vẫn này đừng post lên nửa. hôm qua bro vua postreply bên WINDOW SP3

******KHÔNG BIẾT CÁI GÌ LUÔN********
NẾU MUỐN CÂU BÀI THÌ PHẢI CỐ HỌC NỬA ĐI. KHÔNG CẦN THỂ HIỆN NHƯ VẬY ĐÂU! THANK
 


Mình thì thấy bạn đang mắc phải điều này.

3. Các thông tin, trao đổi trên diễn đàn không được mang nội dung và ngôn ngữ có tính khích bác, bôi nhọ và lăng nhục.
[Up] [Print Copy]
  [Question]   Re: Direct X10 và những điều chưa biết . Phần 1 31/12/2007 05:35:08 (+0700) | #4 | 107130
[Avatar]
oak
Member

[Minus]    0    [Plus]
Joined: 18/04/2006 09:54:00
Messages: 85
Location: Somewhere
Offline
[Profile] [PM] [Email] [Yahoo!]
MÌnh xin có ý vài ý kiến thế này.Về bài trong XP SP3 mình là người tham gia kiểm chứng bản này , post bài .Lúc đầu mình cho rằng bạn neo hack có không đọc kỹ mà đã post, .Nhưng sau nhìn lại thấy bài ấy bạn neo hack post kô thừa, khi vẫn có người down cái bản update 70 MB làm mình phát hoảng.
Còn bài này mà bạn Gygabyte kêu vớ vẩn thì cũng kô đúng lắm.Với trình độ ít ỏi như mình đọc bài này thì thấy cũng khá thú vị đấy chứ.Thân
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|