Nhìn vào công việc thì người ta thường cho rằng không cần thiết, thậm chí có người chả cần quan tâm tới Config.sys hay Autoexec.bat là gì, chả thèm quan tâm tới sự hiện diện của Dos. Họ chỉ cần máy tính khởi động được là đủ rồi. Họ có thể viết ra 1 ứng dụng mà không cần biết gì về hệ thống cả, do các ứng dụng họ viết đâu có liên quan gì đến hệ thống.
Vấn đề phát sinh không phải ở khâu lập trình mà là ở khâu sử dụng máy tính để viết ứng dụng hay để chạy ứng dụng. Nếu bạn không có kiến thức về hệ thống thì khi máy của bạn bị trục trặc làm sao bạn biết cách sửa chữa để tiếp tục dùng nó cho công việc của bạn.
Hẳn chúng ta cũng biết: Ngoại trừ hệ điều hành ra (không kể BIOS) , tất cả các chương trình khác khi chạy đều phải dựa vào hệ điều hành hay một chương trình khác, thí dụ như Windows chẳng hạn. Ðó là nói về phần mềm, còn nếu đi sâu hơn nữa thì mọi phần mềm khi chạy đều phải dựa trên nền phần cứng tức là cấu hình máy tính. Kiến thức về những cái nầy ta gọi chung là kiến thức hệ thống. Như vậy đương nhiên ứng dụng do ta viết ra khi chạy cũng phải lệ thuộc vào hệ thống cụ thể nào đó, thí dụ: chạy trên PC hay Macintos, chạy trên Dos hay Windows. Ðó là chưa nói các công cụ chúng ta dùng để viết ứng dụng cũng phải tuân theo quy luật nầy.
Trên đời nầy không bao giờ có 2 máy tính hoàn toàn giống nhau về phần cứng hay phần mềm. Do đó không có gì bảo đảm chương trình chạy như thế nào trên máy nầy thì cũng chạy như thế đó trên máy khác. Chính vì lý do nầy, nếu chúng ta test và kết luận về chương trình chỉ căn cứ trên một hay hai máy thì xác xuất sai rất lớn. Chúng tôi xin đơn cử 1 trường hợp đơn giản cho các bạn dễ hiểu:
Bạn cài chương trình for Windows tên là A do bạn viết trên máy nào đó, khi chạy có trục trặc. Bạn đừng vội kết luận chương trình A nầy có lỗi (vì khi bạn chạy trên máy bạn nó đâu có lỗi) mà cần phải biết suy luận như sau: Muốn chương trình A chạy tốt thì Windows phải chạy tốt, muốn Windows chạy tốt thì Dos phải chạy tốt, muốn Dos chạy tốt thì máy nầy phải chạy tốt. Nếu bạn chỉ biết viết ứng dụng mà không biết về hệ thống thì làm sao bạn tìm được nguyên nhân phát sinh trục trặc trong cái mắc xích nầy. Ðối với người sử dụng chương trình của bạn khi gặp trục trặc dĩ nhiên là họ cầu cứu bạn (với họ những người lập trình đương nhiên là phải biết khắc phục lỗi), gặp trường hợp đơn giản như hư file config.sys dẫn đến việc quản lý bộ nhớ bị trục trặc mà bạn lại không nhớ tí gì về cách viết lịnh trong file nầy để chỉ thị cho Dos quản lý bộ nhớ theo đúng yêu cầu. Bạn hãy thử tưởng tượng người sử dụng đó nghĩ sao về bạn. Ðặt trường hợp bạn không biết trục trặc phát sinh do Dos hay Windows hư thì bạn giải quyết bằng cách nào và sau đó liệu người ta có còn tin tưởng bạn nữa không.
Kiến thức hệ thống không phải đơn thuần là cấu trúc máy hay hệ điều hành, nó là chuỗi xích có mắc xích đầu tiên là cấu trúc máy rồi đến cấu trúc cây lập trình và cuối cùng là ứng dụng do bạn viết. Nói như vậy không phải bắt các bạn phải biết quá nhiều mà chỉ cần các bạn nắm được các nguyên lý chung để suy luận, còn phần chi tiết hay hình thức ta có thể hỏi máy tính khi cần thiết bằng nhiều cách như: đánh lịnh có ?, xem help, đọc trực tiếp trong file.v..v...
Tóm lại, hiểu biết về hệ thống giúp bạn điều khiển máy tính phục vụ cho công việc lập trình của chính bạn, nó còn giúp bạn suy luận và giải quyết được các trục trặc phát sinh trong quá trình sử dụng chương trình do bạn viết. Ðiều nầy không cần thiết sao ?
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com