»-(¯`v´¯)-»Diễn Đàn Trường Công Nghệ Thông Tin Thái Nguyên»-(¯`v´¯)-»

.:hix lâu không làm web.nên giờ lười làm quá.dùng tạm cái Forum việt vậy.chủ yếu là chất lượng Những bài viết thôi đúng không.thật THà là nói hết không giấu diếm nhưng học xong cấm nghịch bậy..http://guichonguoiay.net.tf web mình đó RỖI VÀO CHơi Ha.hjhj:.
 
Trang ChínhPortalCalendarGalleryTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập
Thông Tin Cực Sock Cho Những Ai Nghiện Game Audition Của Thái Nguyên.Sau Một Thời Gian Tìm Hiểu Mà Nhờ Mấy Anh Ở forum ClbGame Mình Đã Cài THành Công Bản Audition Offline THái Nguyên.Sắp Tới Mình Sẽ Đưa Lên Online.Các Bạn Muốn Chơi Game Và Muốn Sở Hữu Những Bộ Đồ Đẹp Nhất Không Còn Chần Chừ Gì Nữa Mà Không Click Chuột Để Truy Cập Trang Web wWw.AuTn.tk Để Download Và Thưởng thức

Share | 
 

 Phần 3: Cách thức làm việc của một chương tŕnh C#

Go down 
Tác giảThông điệp
thiensuvitinh



Tổng số bài gửi : 24
Join date : 18/03/2010

Bài gửiTiêu đề: Phần 3: Cách thức làm việc của một chương tŕnh C#   Fri Mar 19, 2010 10:14 am

Phần 3: Cách thức làm việc của một chương tŕnh C#


Trọng tâm phương pháp làm việc của C# xoay quanh khái niệm Assembly. Assembly là tập hợp mã đă được biên dịch sang .NET. 1 Assembly chứa nội dung thực thi chương trình hoặc các thư viện động. Assembly có thể được chứa trong nhiều file. Assembly cũng có thể chứa metadata dùng để mô tả các kiểu và phương thức được định nghĩa trong mă tương ứng. Assembly metadata này đựơc hiểu như là manifest, cho phép kiểm tra phiên bản và tính trạng của assembly:

Chỉ định thông tin, như là tên và phiên bản của assembly
Danh sách các kiểu được tập hợp bởi assembly
Danh sách các assembly khác được yêu cầu bởi assembly hiện tại
Danh sách mă truy vấn, mức độ bảo mật bao gồm mức độ được yêu cầu bởi assembly và quyền hạn cho phép của assembly đó



Phân loại Assembly
1)Private Assemblies
Private assemblies là kiểu đơn giản nhất. Nó chứa phần mềm và chỉ được dùng cho phần mềm đó. Với phần mô tả này bạn có thể chứa đựng các private assemblie cung cấp cho một ứng dụng kiểu thực thi và một số thư viện, các thư viện này chứa mă sẽ được thi hành bởi ứng dụng đó.

2)Shared Assemblies
Shared assemblies được dành cho các thư viện công cộng có thể dùng cho bất kì ứng dụng nào.


Tiến trình thực thi bởi một chương trình C#
Khi chương tŕnh được thực thi, CLR sẽ xác nhận đến các Assembly manifest và quyền hạn chạy của chương trinh trên hệ thống. Nếu hệ bảo vệ hệ thống kô cho phép chương trình chạy, chương trình sẽ kô chạy. Nếu được phép, CLR sẽ thực thi mă lệnh. Bit đầu tiên của code được nạp vào bộ nhớ và được biên dịch thành mă nhị phân từ IL bởi JIT. Sau khi được biên dịch, mă được thực thi và chứa trong bộ nhớ.


Các phương thức bảo vệ của .Net và OS với chương trình
Hệ thống đảm bảo rằng private assemblies sẽ không được dùng bởi phần mềm khác, bởi vì một ứng dụng chỉ có thể load private assemblies trong cùng folder với chương trình chính hoặc là trong một thư mục con của nó.
1 giải pháp đưa ra là các private assemblies của một phần mềm sẽ được cài đặt vào cùng một thư mục, nhưng kô thể đảm bảo rằng sẽ không có một gói phần mềm sửa chữa hoặc ghi đè lên private assemblie dành riêng cho một phần mềm khác. Lúc này OS cung cấp một khả năng cho phép mỗi chương tŕnh chỉ nhìn thấy một bộ assemblies cho dù bộ đó có bị cài đè và trùng tên với bộ ass trước
Bởi vì bất kì ứng dụng nào cũng có thể truy xuất một shared assembly, nên cần phải có các cơ chế để bảo vệ các rủi ro sau:

Tranh chấp tên, khi một công ty tạo ra các shared assembly trùng tên với các shared assembly sẵn có của bạn. Về mặt lí thuyết mă của bạn có thể truy xuất vào cả hai assembly này song đây có thể là một vấn đề phức tạp.
Lỗi của một assembly có thể bị ghi đè bởi một phiên bản khác của cùng same assembly - một phiên bản mới không tương thích với những ǵ sẵn có.
Giải pháp cho những vấn đề trên là đặt các shared assembly trong một cây thư mục đặt biệt của hệ thống, có thể xem như là assembly cache toàn cục. Không giống như các private assembly, nó không đơn giản là copy assembly sang một thư mục thích hợp - nó cần được cài đặt rõ ràng vào cache. Tiến tŕnh này có thể được thực thi bởi một số tiện ích của .NET, bao gồm luôn quá trình kiểm tra trên assembly, tương tự như cài đặt một thư mục trong assembly cache để đảm bảo tính toàn vẹn của assembly.
Để tránh tranh chấp tên, shared assemblies đưa ra một được quản lí dựa trên một khóa mật mă chính. Tên này được gọi là strong name, được bảo đảm về tính độc nhất, và phải được trích dẫn bởi ứng dụng muốn tham chiếu đến một shared assembly.
Vấn đề về tương thích với lỗi do ghi đè một assembly được đánh địa chỉ theo thông tín phiên bản trong assembly manifest, và cho phép cài đặt song song.

Continue



Nortonxe(UDS)
Về Đầu Trang Go down
Xem lý lịch thành viên
 
Phần 3: Cách thức làm việc của một chương tŕnh C#
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
»-(¯`v´¯)-»Diễn Đàn Trường Công Nghệ Thông Tin Thái Nguyên»-(¯`v´¯)-» :: Phận Làm Trai Gõ Phím Bình Thiên Hạ--Chí Anh Hùng Click Chuột Định Giang Sơn :: Ngôn Ngữ lập trình C#-
Chuyển đến