با اینکه مایکروسافت به شکل منظم با ارائه وصله‌های امنیتی سیستم عامل خود خود به رفع آسیب‌پذیری‌های موجود می‌پردازد، اما بنظر می‌رسد اخیرا نحوه عرضه وصله‌های امنیتی برای رفع نقص موجود در برخی از کدک های ویندوز 10 بسیاری از کاربران را سردرگم کرد.
 
به گزارش وب‌سایت خبری تحلیلی techradar، وصله‌های امنیتی ویندوز 10 که برای برطرف کردن نقص‌های اصلی موجود در کدک‌های چندرسانه‌ای ویندوز طراحی شده بود، در قالب مایکروسافت استور عرضه شد و همین امر موجب گمراهی بسیاری از کاربران در فرایند نصب این وصله شد که مشکلاتی را به بار‌آورد.
 
گفتنی است آسیب‌پذیری‌های یاد شده که این وصله‌های امنیتی به رفع آنها می‌پردازند CVE-2020-1425 و CVE-2020-1457 نام دارند. این حفره‌ها در واقع موجب می‌شوند که یک هکر، اطلاعاتی به دست بیاورد که بتواند با کمک آنها در آینده سیستم کاربر را به خطر انداخته یا به اجرای کدهای دلخواهشان بر روی سیستم مزبور بپردازند.

از دید کارشناسان امنیتی، از این نقص‌ها می‌توان با استفاده از یک فایل تصویر ویژه، بهره‌برداری کرد و سیستم را در مخاطره قرار داد.
به گفته شرکت مایکروسافت، اکنون این به‌روزرسانی‌ها با چگونگی مدیریت اشیاء توسط Windows Codecs Library در حافظه می‌تواند این مشکل را کاملا برطرف کند.
با این ‌حال، عرضه این وصله‌های امنیتی از طریق مایکروسافت استور بسیاری از کاربران را دچار سردرگمی و شک و تردید فراوانی کرده است.
 
اما از طرف مقابل، پاسخ شرکت مایکروسافت برای انجام این اقدام این بود که بسته کدک HEVC متأثر از این نقص از اجزای انتخابی است که می‌توان آن را از طریق مایکروسافت استور دانلود کرد.
به‌ بیان ‌دیگر، این کدک ها به‌صورت پیش‌فرض در ویندوز 10 وجود ندارند و به همین خاطر مایکروسافت برای عرضه وصله امنیتی برطرف ‌کننده نقص این کدک‌ها از بخش به‌روزرسانی ویندوز استفاده نکرده است.
 



تنها گروه کوچکی از مردم در هزاران سال پیش نحوه نوشتن با این سیستم را بلد بودند، ولی به لطف کشف روزتا استون این زبان رمزگشایی شد.

گوگل یک ابزار جدید هنرها و فرهنگ به نام Fabricius معرفی کرده است که برای همگان امکان یادگیری درباره سیستم نوشتاری مصر باستان موسوم به هیروگلیف، که نمادهای استفاده شده برای نمایندگی کلمات و عبارات هستند، را فراهم می‌آورد. تنها گروه کوچکی از مردم در هزاران سال پیش نحوه نوشتن با این سیستم را بلد بودند، ولی به لطف کشف روزتا استون این زبان رمزگشایی شد.
  فابریشز تازه‌ترین کار تجربی Arts & Culture Lab گوگل است؛ این ابزار از یادگیری ماشین برای ترجمه هیروگلیف استفاده می‌کند. این ابزار در مجموع دربرگیرنده سه بخش است، یکی که درکی پایه از هیروگلیف مصری در اختیار قرار می‌دهد و دیگری که Play نام دارد و برای همگان امکان ارسال پیام‌های رمزنگاری شده با این علائم را فراهم می‌آورد.

قابلیت سوم یک ابزار کاری برای دسکتاپ است که به محققان برای ترجمه هیروگلیف کمک می‌کند؛ این قابلیت برای افراد معمولی چندان جذابیتی نخواهد داشت. گوگل با تقریب زدن هیروگلیف‌ها با ایموجی، و توضیح اینکه هر نماد معنایی دارد، آنها را در زمینه قرار می‌دهند.

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

 



تاریخچه C:
برای بررسی تاریخچه زبان C باید به سال ۱۹۶۷ بازگردیم که مارتین ریچاردز زبان BCPL را برای نوشتن نرم افزارهای سیستم عامل و کامپایلر در دانشگاه کمبریج ابداع کرد. سپس در سال ۱۹۷۰ کن تامپسون زبان B را بر مبنای ویژگیهای زبان BCPL نوشت و از آن برای ایجاد اولین نسخه های سیستم عامل Unix در آزمایشگاههای بل استفاده کرد. زبان C در سال ۱۹۷۲ توسط دنیس ریچی از روی زبان B و BCPL در آزمایشگاه بل ساخته شد و ویژگیهای جدیدی همچون نظارت بر نوع داده ها نیز به آن اضافه شد. ریچی از این زبان برای ایجاد سیستم عامل Unix استفاده کرد اما بعدها اکثر سیستم عاملهای دیگر نیز با همین زبان نوشته شدند. این زبان با سرعت بسیاری گسترش یافت و چاپ کتاب “The C Programming Language” در سال ۱۹۷۸ توسط کرنیگان و ریچی باعث رشد روزافزون این زبان در جهان شد.
متاسفانه استفاده گسترده این زبان در انواع کامپیوترها و سخت افزارهای مختلف باعث شد که نسخه های مختلفی از این زبان بوجود آید که با یکدیگر ناسازگار بودند. در سال ۱۹۸۳ انستیتوی ملی استاندارد آمریکا (ANSI) کمیته ای موسوم به X3J11 را را مامور کرد تا یک تعریف فاقد ابهام و مستقل از ماشین را از این زبان تدوین نماید.در سال ۱۹۸۹ این استاندارد تحت عنوان ANSI C به تصویب رسید و سپس در سال ۱۹۹۰، سازمان استانداردهای بین المللی (ISO) نیز این استاندارد را پذیرفت و مستندات مشترک آنها تحت عنوان ANSI/ISO C منتشر گردید.
در سالهای بعد و با ظهور روشهای برنامه نویسی شی گرا نسخه جدیدی از زبان C بنام C++ توسط بیارنه استراوستروپ در اوایل ۱۹۸۰ در آزمایشگاه بل توسعه یافت. در C++ علاوه بر امکانات جدیدی که به زبان C اضافه شده است، خاصیت شی گرایی را نیز به آن اضافه کرده است.
با گسترش شبکه و اینترنت، نیاز به زبانی احساس شد که برنامه های آن بتوانند برروی هر ماشین و هر سیستم عامل دلخواهی اجرا گردد. شرکت سان مایکروسیستمز در سال ۱۹۹۵ میلادی زبان Java را برمبنای C و C++ ایجاد کرد که هم اکنون از آن در سطح وسیعی استفاده می شود و برنامه های نوشته شده به آن برروی هر کامپیوتری که از Java پشتیبانی کند(تقریبا تمام سیستمهای شناخته شده) قابل اجرا می باشد. شرکت مایکروسافت در رقابت با شرکت سان، در سال ۲۰۰۲ زبان جدیدی بنام C# (سی شارپ) را ارائه داد که رقیبی برای Java بشمار می رود.


ادامه مطلب

برای کسانی که از یک زبان سطح بالا مانند پاسکال یا بیسیک به سراغ سی میایند ممکن است جمله "این زبان سطح پایین است " برایشان چندان با معنی نباشد.



حقیقتا زبان سی فقط مقداری از یک اسمبلر بیشتر دارد و البته به همراه تعدادی قابلیت سطح بالا ، در سی مانند اسمبلی همه چیز به عهده خودتان است.دلیلی که بخاطر آن سی هنوز وجود دارد سرعت آن است ! سرعت اجرای کد برنامه شما برای C یعنی همه چیز ! البته این بدان معنی نیست که سرعت برنامه نویسی برای شما افزایش میابد درواقع C برای اینکه برنامه شما را با تمام سرعت اجرا کند از تمام قابلیتهایی که به نوعی باعث میشود بتوان به برنامه شما SAFE گفت چشم پوشی کرده است .میتوان زبان C را به ماشین مسابقه ایی تشبیه کرد که کمربند ایمنی ندارد ! با این ماشین میتوان با حد اکثر سرعت حرکت کرد ولی اگر تصادفی رخ دهد... !C زبان برنامه نویسی سیستم است: ویندوز 95 - 96 - NT و UNIX نیز با کمک این زبان طراحی شده اند. اغلب هم دیده ایم که در این سیستم عاملها C اولین زبانی است که پشتیبانی میشود. یکی از مسائلی که شما احتمالا از آن خبر دارید آن است که اسمبلر Portable نیست . حتی آنجا که یک برنامه به زبان پاسکال بهتر عمل میکند برنامه نوشته شده با اسمبلر اجرا نمیشود. اگر بگوییم که C چیزی بیشتر از یک اسمبلر نیست پس باید بگوییم که اصلا Portable هم نیست ، اما این موضوع به شیوه طراحی C بر میگردد. در این مورد زبان C طوری طراحی شده است که به هیچ عنوان مشکلی نخواهد داشت . البته منظور این نیست که برنامه ای که تحت داس با سی نوشته شده است تحت لینوکس هم کار خواهد کرد بلکه بحث در مورد سیستم سخت افزاری و پردازنده است.زبان C دارای یک شهرت ترسناک! به نام "Write Only" است . این بدین معنی است که شما میتوانید کدی بنویسید که قابل خواندن و اجرا شدن نباشد (نه به این معنی که خطای کامپایل یا لینکر داشته باشد).تاریخچه زبان سی:- در سال 1972 توسط برایان کرناین ( Brian Kernighan ) و دنیس ریچی ( Dennis Ritchie ) در AT&T Bell Labs اختراع شد.- در سال 1983 موسسه استاندارد آمریکا شروع به استانهدارد سازی این زبان کرد.- در سال 1989 کار استاندارد سازی زبان سی توسط سازمان جهانی استاندارد ادامه ادامه پیدا کرد.- در سال 1990 کار استاندارد سازی به پایان رسید و امروزه آن را به نام C استاندارد می شناسیم.- هر چیزی قبل از این C را به نام K&R C می شناسیم.سی اولین بار توسط برایان کرناین و دنیس ریچی در شرکت AT&T اختراع شد . موضوع از آنجا شروع شد که سعی کردند یک بازی به نام "asteroids" را بر روی مین فریم های شرکت AT&T اجرا کنند ولی متاسفانه کارایی مین فریم باعث شد که نتوانند آنچه را که میخواهند به اجرا در بیاورند. بعد ها آنها با استفاده از قدرت کامپیوتر های 386 و تقریبا کمک 100 نفر کاربر متوجه شدند که به اندازه کافی کنترل بر روی فضانورد موجود در بازی ندارند. فضانوردها معمولا به محض اینکه از کنار یک سیاره رد میشدند از بین میرفتند!این قضیه تقریبا جنبه شخصی پیدا کرد تا اینکه آنها تصمیم به کد نویسی مجدد بازی بر روی یک سیستم DEC PDP-7 که در شرکت بلا استفاده مانده بود ، گرفتند متاسفانه PDP-7 هیچ سیستم عاملی نداشت بنابر این آنها یک سیستم عامل هم طراحی کردند.پروژه طراحی سیستم عامل آنقدر عظیم شد که عملا باعث فراموشی بازی astroids گردید . بعدها تصمیم بر آن شد که این سیستم عامل را برای یک DEC PDP-11 آماده کنند ولی این کار واقعا کار سخت و مشکلی بود چرا که تمام کد با دست و بدون کمک هرنوع اسمبلری به زبان ماشین نوشته شده بود.مجددا تصمیم گیری شد که سیستم عامل را دوباره با کمک یک زبان سطح بالا کد نویسی کنند بنابراین این برنامه بین ماشین های مختلف قابلیت portablity بیشتری پیدا میکرد. تنها چیز مورد نیاز طراحی یک کامپایلر برای هر ماشین جدید و نهایتا کامپایل مجدد کد در ماشین جدید بود.زبانی که در آن زمان برای این منظور طراحی شد B نام داشت . اما این زبان برای PDP-7 طراحی شده بود و امکانات آن به اندازه ای نبود که بتواند از Instruction Set ماشین PDP-11 استفاده کند در نتیجه زبان C اختراع شد.Instruction Set مجموعه دستوراتی است که توسط واحد پردازش مرکزی سیستم قابل اجرا است به عنوان مثال تعدادی از دستورات موجود در instruction set یک PIC16Fxxx عبارتند از :


ادامه مطلب

زبانهاي برنامه‌نويسي :

نرم‌افزارها توسط زبانهاي برنامه‌نويسي نوشته مي‌شوند. زبانهاي برنامه‌نويسي، يك سيستم ارتباطي هستند كه توسط آنها مي‌توان دستورات لازم را به ماشين انتقال داد.

هرزبان برنامه‌نويسي به مجموعه‌أي از علايم، قواعد و دستورالعمل‌ها گفته مي‌شود كه امكان ارتباط با كامپيوتر را جهت بيان كاري يا حل مسئله‌اي فراهم مي‌كند.

در حالت كلي زبانهاي برنامه‌نويسي را به سه دسته زير تقسيم‌بندي مي‌كنند:

1.زبانهاي سطح بالا

2.زبانهاي سطح پايين

3.زبانهاي سطح مياني

زبان Pascal

این زبان توسط پروفسور نيكلاس ويژت در انستيتو فني فدرال سوئيس در در اواخر سال 1960 و اوايل 1970 مطرح گرديد و به افتخار بلز پاسكال دانشمند فرانسوي قرن هفدهم ميلادي، پاسكال نامگذاري شده است.پاسکال یک زبان سطح بالا است.

اجزاي تشکيل‌دهنده يک برنامه:

1.کلمات ذخيره‌شده ( Reserved Words )

2.شناسه‌ها ( identifier )



ادامه مطلب

.: Weblog Themes By Pichak :.