mình có 2 vấn đề về phần mềm:
- nếu một phần mềm được tải về từ internet nó sẽ tồn tại dưới dạng mã gì(có phải mã máy không)?
- khi một phần mềm trong quá trình thực thi thì nó cần thông qua hệ điều hành để máy tính có thể hiểu được không?
mình có 2 vấn đề về phần mềm:
Câu trả lời cho cả 2 câu hỏi là tùy thuộc vào pm ấy là pm gì. Viết bằng ngôn ngữ gì
HĐH ngoài sắp chỗ (mem) và phiên làm việc (scheduling) cho các chương trình thì còn cung cấp API nữa nhé
tại mình thấy trong windows thì phần mềm tải về thường tồn tai dưới file.exe nhưng k hiểu nó là mã gì. tại sao phần mềm viết bằng nhiều ngôn ngữ khác nhau nhưng nó là file.exe?
vậy mình có thể viết một phần mềm mà không dùng đến API của hệ điều hành được không bạn.
Cùng là exe nhưng có thể có 2 dạng. App native thì 100% là mã máy mà máy tính có thể hiểu. Ngoài ra thì cũng có thể là dạng app hybrid, lúc đó phần code có business logic chính lại không phải là mã máy. Ngoài ra còn có các app ở các ngôn ngữ được dịch sang mã bytecode như java thì cần máy ảo, bytecode sẽ được máy ảo thông dịch ra mã máy
Vẫn phải dùng API và rất low-level.
Ví dụ với Linux. https://www.embedded.com/design/operating-systems/4401769/Device-drivers-in-user-space
ok…cảm ơn ban nhiều
vậy ak…cảm ơn nhiều
Câu trả lời năm trong môn kiến trúc máy tính nhé bạn :v