 بسم اللہ الرحمن الرحیم آج ہم موڈیول 130 دیسکس کریں گے، موڈیول 130 ہے about using fibres پریویسلی ہم نے ایک سیٹ of API's مختلف دیسکس کی تھی میرے خالہ رہا ہوں 7 API's ہے جو کہ فائیبر کو مانج کرنے کے لیے فائیبر کو کریئٹ کرنے کے لیے فائیبر کو دلیٹ کرنے کے لیے فائیبر سے ایک فائیبر سے دوسرے فائیبر پر سوچ کرنے کے لیے اور فائیبر سے مختلف دیسکس کی تھی مختلف دیسکس کرنے کے لیے use ہوتی ہیں اب ہم دیکھیں گے ان ساری API's کو ہم کے سکیم کے تھی use کرکے ایک ایسا پغرام بنا سکتے ہیں جو کہ فائیبرز کا استعمال کریں اور جب اوپس پغرام کی نویت کو تھوڑا سا understand کریں گے آپ کو یہ بھی سمجھ میں آجائے گی فائیبر کا ہمیں آسل میں کیا فائیبر کا ہمیں 한ام بھی سمایچ ہے کہ ہم ado isn کو خود اپنی مرزی سے کن ترل کر парے الحقٰ Toronto Dylan ہوourage اور الذي معاہم معاہم معاہم معاہم معاہم معاہم with انٹ کے انا کمست in function اس کے اندر آپ نے کیا کیا کرتے ہیں؟ Convert Thread to Fiber Thread کو آپ نے Fiber میں Convert کر لیا اور پھر ایک Loop کے اندر آپ کئی سارے Create Fiber کر رہے ہیں ایک تو یہ جو Primary Thread ہے یہ Fiber بن گی یہ Fiber بن گی اور اس کے لوہا اس Thread کے اندر آپ نے کئی سارے Fiber Create کر لیا یہ ایک آپ نے Loop لگایا اس Loop End Times یہ Loop چل رہا ہے اور ہر دفعہ ایک Fiber Create کر رہا ہے اور اس کا جو بھی ادرس ہے اس ادرس کو اس رے کے اندر Place کرتا ہے اب جتنے بھی اندر آپ نے رکھا ہے 5 رکھا 10 رکھا جتنے بھی وہ اتنے سارے Fiber بن گے اب آپ نے یہاں سے Execution اگر Transfer کرنی ہے to a Certain Fiber تو آپ کیا کریں گے? Switch to Fiber ابھی کیونکہ یہ Primary Thread وہ Fiber ہے جس کی سب سے پہلے Execution ہوتی ہے Primary Thread وہ آگے کہ کسی اور Thread کے اوپر Execution Transfer کر رہا ہے کیسے Transfer کر رہا ہے یہاں پہلے Switch to Fiber کی مدل سے یہاں پہلے Switch to Fiber کو استعمال کیا اور یہاں پہلے اس نے Address specify کیا یعنی کہ یہ جو اس نے Fiber Zero Create کیا تھا اس کے اوپر Execution Transfer ہوگا Fiber Zero کے اوپر Execution Transfer ہوئی آپ نے Fiber Data یہاں سے Get Fiber Data سے آپ نے Fiber Data اٹھایا اس کے اوپر کوئی Operation پر پرام کیا آگے Execution چلتی گئی تھوڑا آگے جا کہ آپ کہتے ہیں یہاں پہ آپ Execution مجھے Switch کرنے کی ضرورت ہے کس پہ Switch کرے ہیں آپ Fiber One کے اوپر Execution Switch کرے ہیں Fiber One کے اندر اگین آپ کیا کرے ہیں Fiber One کے اندر آپ Data get کرتے ہیں Get Fiber Data سے Data get کرتے ہیں کچھ Processing کرتے ہیں اور تھوڑی دیر بعد آپ واپس Execution جو ہے وہ Primary Fiber Transfer کرتے ہیں Primary Fiber پھر کیا کرے گا Primary Fiber اسی point سے continue کرے کہ جس point سے اس نے Execution Switch کیا کیس point پہ Switch کیا وہ اس نے Fiber Zero کیوپر Execution Switch کیا اب جو next ڈیٹمنٹ ہے اس کے پر Execution آدے گی اور چناچے اب Execution جو ہے وہ کس پہ Switch ہو جائے گی وہ Switch ہو جائے گی on to Fiber Two Fiber Two اپنا Data get کرتے ہیں اپنی Processing کرتے ہیں اور یہاں سے پھر اپنی Execution Switch کرتا ہے to Fiber Zero Fiber Zero نے اپنی Execution اس point سے چھوڑی تھی اس point سے OnwardZ اپنی Execution کرے گا اور اب یہاں پہ آگئے یہاں سے Again Execution Switch کرا ہے to Fiber Two Fiber Two کیوپر Execution آگی Fiber Two کیوپر Execution آگی اس نے اس point سے Execution چھوڑی تھی یہاں سے OnwardZ Execution جو ہے وہ continue کرے گا اور یہاں پہ وہ Exit Thread کرتا ہے تو اس طرح اس سکیم کے اندر آپ دیکھ رہے ہیں کہ ایک Fiber جو ہے اپنے اس Execution دوسرے Fiber کے پر خود Transfer کرا ہے اپریٹنگ سسٹم اس سے بالکل انویر کہ کون سے فائبن ہے کتنے فائبن ہے کون سے فائبن اس وقت اندران کرا ہے یہ ساری کی ساری یہاں یہ User Space ہے یہ سارا کام User Space کے اندر ہو رہا ہے اپریٹنگ سسٹم اس سے بالکل انویر ہے اور جس point پہ Switching ہونی ہے اس point اس point کو user control کرا ہے آپ کی application control کرے کہ اس point پہ آپ چاہتے ہیں کہ Execution جو ہے وہ Fiber 1 پہ چلی جائے اس پہ آپ چاہتے ہیں کہ Fiber 0 پہ چلی جائے اس point پہ آپ چاہتے ہیں کہ Fiber 2 پہ چلی جائے and so on جہاں جہاں بھی آپ Execution آپ سمجھتے ہیں آپ Switch کر کے آپ نے دوسرے Fiber کے پر لیکے جانی ہے وہاں پہ آپ اتنی مرزی سے Execution Switch کر سکتے ہیں اب اس میں بھی دو policies ہیں یہ دو policies ہیں پہلی policy ہے کہ master slave scheduling آپ کو یہاں پرہا رہا ہے کہ Fiber 1 کے اوپر جب Execution جاتی ہے تو وہ واپس Execution کس کو بھیجتا پرائمری کو بھیجتا پرائمری جو ہے وہ master اور Fiber 1 جو ہے وہ slave جب بھی ایک Fiber کو کسی دوسر Fiber کے اوپر Execution Switch کرنے کی ضرورت ہوتی ہے اور وہ Fiber Execution واپس پرائمری کو بھیجتا اور پرائمری پھر آگے سے دسائٹ کرتا ہے کہ کس کے اوپر اس نے Execution بھیجنی ہے تو یہ والی سکیم کلاتی ہے master slave scheme master slave scheduling کہ جب بھی ایک Fiber کو Switch کرنے کی ضرورت ہوگی تو وہ پرائمری کے پاس جائے گا پرائمری آگے سے دسائٹ کرے گا آپ کس کے اوپر Switching جانی چھائے وہاں سے واپس آتی ہے تو again پرائمری کے پاس جائے گے اور پرائمری دسائٹ کرے گا کس کے پاس Switching جانی چھائے دوسری Peer to Peer پور example 0 جو ہے وہ دسائٹ کرتا ہے کہ Switching جو ہے وہ 1 کے اوپر چلیجا یا یہ دسائٹ کرتا ہے کہ Switching جو ہے 2 کے اوپر چلیجا ہے 2 جو ہے وہ دسائٹ کرتا ہے کہ Switch کر کے یہ واپس execution 0 کے اوپر چلیجا ہے تو ان کے بیچ میں جو scheduling ہو رہی ہے وہ Peer to Peer ہے وہ یہ دوسری والی policy ہے Fiber 0 اور 2 والا جو case ہے یہ Peer to Peer Switching ہو رہی ہے کہ آپ کا Peer دسائٹ کرتا ہے کہ آپ Switching کس کے پاس جائے گا 0 نے 2 کو دی 2 نے واپس پھر سے 0 کو دے دی and so on 0 پھر ہو سکتا ہے پھر ہو سکتا ہے آگے دسائٹ کرے کہ 1 کو جانی ہے and so on جس کسی Fiber کو بھی اس نے Switching Transmort کرنی ہے وہ Peer ہی دسائٹ کرے گا Master دسائٹ نہیں کرے گا