سیستم عامل کوثر

سیستم عامل فارسی کوثر

سیستم عامل کوثر

سیستم عامل فارسی کوثر

سیستم عامل کوثر

سیستم عامل کوثر یک سیستم عامل فارسی بر پایه معماری X86 می باشد. هدف این سیستم عامل تا اطلاع ثانوی آزمایشی / آموزشی می باشد. این سیستم عامل بر پایه هیچ سیستم عامل دیگری مانند لینوکس و ... نمی باشد و از ابتدا توسط توسعه دهندگان آن نوشته شده است.
ما از علاقمندان به برنامه نویسی و طراحی سیستم در همکاری و توسعه این سیستم عامل استقبال می کنیم. نیازی نیست که شما برنامه نویسی و یا ... خبره باشید. حتی با دانش کم هم می توان به ما کمک کرد.
امید است بعد از مراحل آموزشی به مرحله بهره برداری از یک سیستم عامل کاملا بومی برسیم.
emadrezvani@chmail.ir

آخرین نظرات
نویسندگان

طراحی ساختار داده دیسک

مازیار نون | سه شنبه, ۱۷ تیر ۱۳۹۳، ۰۲:۳۷ ب.ظ

سلام

برای کار با دیسک در طراحی سیستم عامل باید آن را به عنوان یک ساختار داده طراحی کنید در این ساختار داده شما تمام مشخصات و متدهای لازم را به عنوان نیازسنجی مطرح می کنید و بعد در یک برنامه جداگانه می توانید از آن استفاده کنید.

نکته: این پست فقط به تعریف یک ساختار داده ساده برای دیسک می پردازد.

برای آنکه سیستم بتواند به درخواست های دیسک مانند خواندن/نوشتن پاسخ دهد ، نیاز است که دیسک به صورت جداگانه برای سیستم تعریف شود.

عملیات های دیسک به این صورت است که پردازنده وقتی که یک درخواست انجام شد یک وقفه می دهد ، دلیل آن هم این است که عملیات دیسک به صورت ناهمگام است.دیسک شامل صفحاتی است که به شیارها تقسیم بندی شده است و هر شیار به قطاع هایی تقسیم شده است. تعداد قطاع ها برابر هر شیار است و در هر قطاع تعداد مساوی بایت وجود دارد.

برای اینکه بتوان از دیسک داده ای خوانده شود یا داده ای نوشته شود شما نیاز به شماره قطاع دارید. این شماره ها برای هر قطاع منحصر به فرد است.

تعریف ساختار داده شامل موارد مهم زیر است:

ثابت ها:

  • تعریف تعداد بایت ها به ازای هر قطاع
  • تعریف تعداد قطاع ها در هر شیار
  • تعریف تعداد شیارها در هر دیسک

  • تعریف شماره قطاع: براساس فرمول (تعداد قطاع در هر شیار * تعداد شیارها در هر دیسک)
متدها:

  • عملیات درخواست خواندن: با گرفتن شماره قطاع
  • عملیات درخواست نوشتن : با گرفتن شماره قطاع
  • عملیات میزان تاخیر در درخواست ها
این ها پایه ترین متدها و ثابت هایی هستند که من در این بخش تعریف کردم. و احتمالاً براساس نیاز می توان متغیرهایی مانند دسترسی به قطاع بعدی و قبلی و ... تعریف کرد.
نکته: این تعریف کامل نیست. و فقط هدف شناخت مهمترین عملیات با دیسک است.

  • مازیار نون

نظرات  (۴)

سلام لطفابه سایت من مراجع کنید وسفارشات خودرابه من اعلام کنید موضوع سایت من طراحی قالب وساخت بنر.لگو.هدر.کارت ویزیت و...است designfa07.blog.ir

  • عماد رضوانی
  • توی برنامت نحوه خواندن یک فایل بصورت LBA هم بحث کن. سیستم فعلی بر همین اساس هست.
  • مازیار نظریان
  • سلام
    این چیزی که من تعریف کردم ساده ترین و شبیه سیستم های اولیه بود. و داخل متن هم گفتم.
    بله سیستم های جدید از مدل هایی مانند LBA استفاده می کنند.
    ولی باشه من حتماً در مورد LBA و طراحی اون خواهم گفت

  • عماد رضوانی
  • بسیار عالی. پس اگه بتونی مثال خواندن از طریق وقفه(همونطور که توی بوت لودر سیستم عامل ما هم استفاده کردیم ) بزنی که خیلی بهتره.

    ارسال نظر

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی