What is HAL concept in Linux

  • HAL مخفف عبارت Hardware Abstraction Layer می باشد.
  • مفهوم و تعریف HAL صرفا برای لینوکس نیست و در سیستم عامل ها و برنامه های دیگر نیز وجود دارد.

  • HAL در واقع لایه ای است که نام های فیزیکی و اصلی انواع اتصالات را به نام هایی قابل فهم، ساده و استاندارد تبدیل می کند.
  • مثلا نام اصلی یک کارت شبکه می تواند متناسب با برند، نوع آن، سرعت آن، سال ساخت و … باشد و در واقع متشکل از چندین اسم و در نهایت یک عبارت طولانی باشد.
  • حتی ممکن است نام هر کارت شبکه یکتا و uniq باشد.
  • در این حالت برای آسان شدن کار با انواع اتصالات HAL تعریف می شود.
  • به عنوان مثال اولین کارت شبکه وایرلس متصل به سیستم همیشه wlan0 نام خواهد داشت.
  • همچنین دومین کارت شبکه وایرلس سیستم wlan1 خواهد بود.
  • همچنین اولین کارت شبکه سیمی eth0 خواهد گرفت.
  • توجه کنید که این نامگذاری ها فارغ از برند و ویژگی های هر کارت شبکه هستند.
  • همچنین اگر اولین کارت شبکه سیستم با یک کارت شبکه دیگر تعویض شوید، همچنان نام آن eth0 باقی می ماند.

  • پس با استفاده از مفهوم HAL کار با اتصالات ( انواع کارت شبکه ، دیسک ها و … ) آسان خواهد شد.

  • HAL is Hardware Abstraction Layer. It abstracts(خلاصه) your hardware details from you, say any first network card will be eth0
  • This way Linux will see any hardware as an standard hardware and you will be able to replace the hardware easily.