לדלג לתוכן

תרגול גישה לחומרה ובחירת מודל

בחרו תיאור משאבים מתוך דוגמת driver רשמית ושרטטו את ההבדל בין raw address, translated resource, מיפוי CPU וכתובת DMA. אין להשתמש בכתובות מומצאות כדי לבצע גישה בפועל.

הרחיבו את MapRegisters כך שידחה משאב שאינו מתאים לאורך ולדגלים שהתקן מסוים דורש, ונמקו את מדיניות ה־cache שנבחרה. תכננו את מסלול rollback כאשר מיפוי שני נכשל אחרי שהראשון הצליח.

ציירו את חיי buffer של DMA מן ההקצאה ועד completion, כולל ביטול והסרה. ציינו בדיוק מתי ההתקן מפסיק להיות רשאי לכתוב.

לבסוף השוו KMDF, UMDF ו־class driver קיים עבור התקן לדוגמה. בחרו מודל לפי דרישות מתועדות וציינו אילו דרישות אינן ידועות עדיין.