Translation

(itstool) path: imageobject/imagedata This is a reference to an external file such as an image or video. When the file changes, the md5 hash will change to let you know you need to update your localized copy. The msgstr is not used at all. Set it to whatever you like once you have updated your copy of the file.
_
external ref='sockets/layers' md5='__failed__'
46/460
Context English Persian State
<personname> <firstname>G. Adam</firstname> <surname>Stanislav</surname> </personname> <contrib>Contributed by </contrib> <personname> <firstname>G. Adam</firstname> <surname>Stanislav</surname> </personname> <contrib>نوشته شده توسط </contrib>
<acronym>BSD</acronym> sockets take interprocess communications to a new level. It is no longer necessary for the communicating processes to run on the same machine. They still <emphasis>can</emphasis>, but they do not have to. سوکت‌های <acronym>BSD</acronym> ارتباطات بین پردازشی را به سطح جدیدی منتقل می‌کنند. دیگر نیاز نیست که پردازش‌های ارتباطی بر روی یک دستگاه اجرا شوند. همچنان <emphasis>می‌توانند</emphasis>، اما مجبور نیستند.
Not only do these processes not have to run on the same machine, they do not have to run under the same operating system. Thanks to <acronym>BSD</acronym> sockets, your FreeBSD software can smoothly cooperate with a program running on a <trademark class="registered">Macintosh</trademark>, another one running on a <trademark>Sun</trademark> workstation, yet another one running under <trademark class="registered">Windows</trademark> 2000, all connected with an Ethernet-based local area network. نه تنها لازم نیست این پردازش‌ها بر روی یک دستگاه اجرا شوند، بلکه لازم نیست تحت سامانهٔ عاملی یکسان باشند. به لطف سوکت‌های <acronym>BSD</acronym>، نرم‌افزار FreeBSD شما می‌تواند به راحتی می‌تواند با برنامه‌ای بر روی یک <trademark class="registered">Macintosh</trademark>، برنامهٔ دیگری بر روی یک ایستگاه کاربری <trademark>Sun</trademark>، حتی برنامهٔ دیگری که تحت <trademark class="registered">Windows</trademark> 2000 اجرا شده است، همه وصل شده به یک شبکهٔ داخلی متکی بر Ethernet، همکاری کند.
But your software can equally well cooperate with processes running in another building, or on another continent, inside a submarine, or a space shuttle. به همین ترتیب برنامهٔ شما می‌تواند با یک پردازش‌های در حال اجرا در ساختمانی دیگر، یا در قاره‌ای دیگر، در یک زیردریایی، یا یک شاتل فضایی همکاری کند.
It can also cooperate with processes that are not part of a computer (at least not in the strict sense of the word), but of such devices as printers, digital cameras, medical equipment. Just about anything capable of digital communications. همچنین می‌تواند با پردازش‌هایی که جزئی از رایانه نیستند (حداقل نه به شکل اصلی واژه) و بخشی از چاپگرها، دوربین‌های دیجیتال، یا تجهیزات پزشکی هستند همکاری کند. تقریباً در مورد هر چیزی که قادر به ارتباطات دیجیتال باشد.
Networking and Diversity شبکه‌سازی و گوناگونی
We have already hinted on the <emphasis>diversity</emphasis> of networking. Many different systems have to talk to each other. And they have to speak the same language. They also have to <emphasis>understand</emphasis> the same language the same way. ما پیشتر به <emphasis>گوناگونی</emphasis> در شبکه اشاره کرده‌ایم. بسیاری از سامانه‌های مختلف باید با یک‌دیگر صحبت کنند. و باید به زبانی یکسان صحبت کنند. همچنین باید آن زبان یکسان را به شیوه‌ای یکسان <emphasis>بفهمند</emphasis>.
People often think that <emphasis>body language</emphasis> is universal. But it is not. Back in my early teens, my father took me to Bulgaria. We were sitting at a table in a park in Sofia, when a vendor approached us trying to sell us some roasted almonds. مردم اغلب فکر می‌کنند که <emphasis>زبان بدن</emphasis> جهانی است. اما اینطور نیست. در اوایل نوجوانی، پدرم مرا به بلغارستان برد. ما در پارکی در صوفیه سر میزی نشسته بودیم که فروشنده‌ای به ما نزدیک شد و خواست تا مقداری بادام برشته شده به ما بفروشد.
I had not learned much Bulgarian by then, so, instead of saying no, I shook my head from side to side, the <quote>universal</quote> body language for <emphasis>no</emphasis>. The vendor quickly started serving us some almonds. من تا آن زمان بلغاری زیادی یاد نگرفته بودم، بنابراین به‌جای نه گفتن، سرم را از طرفی به طرف دیگر تکان دادم، زبان بدنیِ <quote>جهانی</quote> برای <emphasis>پاسخ منفی</emphasis>. فروشنده به‌سرعت شروع کرد به سرو کردن مقداری بادام.
I then remembered I had been told that in Bulgaria shaking your head sideways meant <emphasis>yes</emphasis>. Quickly, I started nodding my head up and down. The vendor noticed, took his almonds, and walked away. To an uninformed observer, I did not change the body language: I continued using the language of shaking and nodding my head. What changed was the <emphasis>meaning</emphasis> of the body language. At first, the vendor and I interpreted the same language as having completely different meaning. I had to adjust my own interpretation of that language so the vendor would understand. بعد به یاد آوردم که در بلغارستان تکان دادن سر به طرفین به معنی <emphasis>پاسخ مثبت</emphasis> است. به‌سرعت شروع به تکان دادن سرم به بالا و پایین کردم. فروشنده متوجه شد، بادام‌هایش را برداشت، و رفت. برای یک ناظر ناآگاه، من زبان بدن را تغییر ندادم: به استفاده از زبان تکان دادن سرم ادامه دادم. چیزی که تغییر کرده بود، <emphasis>معنای</emphasis> زبان بدن بود. در ابتدا، فروشنده و من هر دو یک زبان را با معانی کاملاً متفاوت تفسیر کردیم. من باید تفسیر خود را از آن زبان به‌گونه‌ای تنظیم می‌کردم تا فروشنده درک کند.
It is the same with computers: The same symbols may have different, even outright opposite meaning. Therefore, for two computers to understand each other, they must not only agree on the same <emphasis>language</emphasis>, but on the same <emphasis>interpretation</emphasis> of the language. در مورد رایانه‌ها نیز همینطور است: نمادهای مشابه می‌توانند معانی متفاوت، یا حتی کاملاً مخالف داشته باشند. بنابراین، برای اینکه دو رایانه همدیگر را بفهمند، آنها نه تنها باید بر روی یک <emphasis>زبان</emphasis> یکسان، بلکه بر روی <emphasis>تفسیر</emphasis> یکسان از آن زبان اتفاق داشته باشند.
Protocols قرارداد‌ها (پروتکل‌ها)
While various programming languages tend to have complex syntax and use a number of multi-letter reserved words (which makes them easy for the human programmer to understand), the languages of data communications tend to be very terse. Instead of multi-byte words, they often use individual <emphasis>bits</emphasis>. There is a very convincing reason for it: While data travels <emphasis>inside</emphasis> your computer at speeds approaching the speed of light, it often travels considerably slower between two computers. در حالی که زبان‌های مختلف برنامه‌نویسی دارای قواعد نحوی پیچیده‌ای هستند و از تعدادی واژگان چند حرفی رزرو شده استفاده می‌کنند (که درک آنها را برای انسان برنامه‌نویس آسان می‌کند)، زبان‌های ارتباطات داده بسیار مختصر هستند. به جای واژگان چند-بایتی، اغلب از <emphasis>بیت‌های</emphasis> منفرد استفاده می‌کنند. یک دلیل بسیار قانع کننده برای آن وجود دارد: در حالی که داده <emphasis>داخل</emphasis> رایانهٔ شما با سرعتی نزدیک به سرعت نور حرکت می‌کند، غالباً بین دو رایانه به‌طور قابل توجهی کندتر حرکت می‌کند.
Because the languages used in data communications are so terse, we usually refer to them as <emphasis>protocols</emphasis> rather than languages. از آن رو که زبان‌های استفاده شده در ارتباطات داده بسیار مختصرند، ما به‌طور معمول به آنها به جای زبان‌ها، به‌عنوان <emphasis>قراردادها</emphasis> (protocols) اشاره می‌کنیم.
As data travels from one computer to another, it always uses more than one protocol. These protocols are <emphasis>layered</emphasis>. The data can be compared to the inside of an onion: You have to peel off several layers of <quote>skin</quote> to get to the data. This is best illustrated with a picture: وقتی داده از رایانه‌ای به رایانه‌ای دیگر حرکت می‌کند، همیشه از بیش از یک قرارداد استفاده می‌کند. این قراردادها <emphasis>لایه‌لایه</emphasis> هستند. داده را می‌توان با داخل یک پیاز قیاس کرد: باید رسیدن به داده، باید چند لایه از <quote>پوست</quote> را جدا کنید. این موضوع بهتر است با یک تصویر تشریح شود:
_ external ref='sockets/layers' md5='__failed__' external ref='sockets/layers' md5='__failed__'
+----------------+
| Ethernet |
|+--------------+|
|| IP ||
||+------------+||
||| TCP |||
|||+----------+|||
|||| HTTP ||||
||||+--------+||||
||||| PNG |||||
|||||+------+|||||
|||||| Data ||||||
|||||+------+|||||
||||+--------+||||
|||+----------+|||
||+------------+||
|+--------------+|
+----------------+
+----------------+
| Ethernet |
|+--------------+|
|| IP ||
||+------------+||
||| TCP |||
|||+----------+|||
|||| HTTP ||||
||||+--------+||||
||||| PNG |||||
|||||+------+|||||
|||||| Data ||||||
|||||+------+|||||
||||+--------+||||
|||+----------+|||
||+------------+||
|+--------------+|
+----------------+
<imageobject> <imagedata fileref="sockets/layers"/> </imageobject> <textobject> <_:literallayout-1/> </textobject> <textobject> <phrase>Protocol Layers</phrase> </textobject> <imageobject> <imagedata fileref="sockets/layers"/> </imageobject> <textobject> <_:literallayout-1/> </textobject> <textobject> <phrase>لایه‌های قرارداد</phrase> </textobject>
In this example, we are trying to get an image from a web page we are connected to via an Ethernet. در این مثال، ما خواهان دریافت یک عکس از صفحهٔ وبی هستیم که توسط یک Ethernet به آن وصل شده‌ایم.
The image consists of raw data, which is simply a sequence of <acronym>RGB</acronym> values that our software can process, i.e., convert into an image and display on our monitor. این عکس متشکل از دادهٔ خام است، که در حقیقت دنباله‌ای از مقادیر <acronym>RGB</acronym> هستند که نرم‌افزار ما آن را می‌تواند پردازش کند، به‌گفته‌ای دیگر، به عکسی قابل نمایش بر روی صفحه نمایش ما تبدیل کند.
Alas, our software has no way of knowing how the raw data is organized: Is it a sequence of <acronym>RGB</acronym> values, or a sequence of grayscale intensities, or perhaps of <acronym>CMYK</acronym> encoded colors? Is the data represented by 8-bit quanta, or are they 16 bits in size, or perhaps 4 bits? How many rows and columns does the image consist of? Should certain pixels be transparent? افسوس، نرم‌افزار ما هیچ راهی برای تشخیص نحوهٔ سازماندهی داده‌های خام ندارد: آیا این یک دنبالهٔ مقادیر <acronym>RGB</acronym> است، یا دنباله‌ای از شدت طیف خاکستری‌ها، یا شاید هم رنگ‌های کدگذاری شدهٔ <acronym>CMYK</acronym>؟ این داده‌ها توسط ذرات هشت بیتی نمایش داده شده‌اند، یا اندازهٔ آنها شانزده بیت، و یا شاید چهار بیت است؟ تصویر متشکل از چند ردیف و ستون است؟ آیا پیکسل‌های خاصی باید شفاف باشند؟
I think you get the picture... به گمانم که درک کردید...
To inform our software how to handle the raw data, it is encoded as a <acronym>PNG</acronym> file. It could be a <acronym>GIF</acronym>, or a <acronym>JPEG</acronym>, but it is a <acronym>PNG</acronym>. برای مطلع‌سازی نرم‌افزار ما از نحوهٔ مدیریت داده‌های خام، تصویر به‌عنوان یک پروندهٔ <acronym>PNG</acronym> کدگذاری شده‌است. می‌توانست یک <acronym>GIF</acronym>، یا یک <acronym>JPEG</acronym> باشد، اما یک <acronym>PNG</acronym> است.
And <acronym>PNG</acronym> is a protocol. و <acronym>PNG</acronym> یک قرارداد است.
At this point, I can hear some of you yelling, <emphasis><quote>No, it is not! It is a file format!</quote></emphasis> در این مرحله، می‌توانم برخی از شما را بشنوم که دارید فریاد می‌زنید، <emphasis><quote>نه، اینطور نیست! این یک قالب پرونده است!</quote></emphasis>
Well, of course it is a file format. But from the perspective of data communications, a file format is a protocol: The file structure is a <emphasis>language</emphasis>, a terse one at that, communicating to our <emphasis>process</emphasis> how the data is organized. Ergo, it is a <emphasis>protocol</emphasis>. البته که این یک قالب پرونده است. اما از منظر ارتباطات داده، یک قالب پرونده یک قرارداد است. ساختار پرونده یک <emphasis>زبان</emphasis> است، یک زبان مختصر، که <emphasis>فرآیند</emphasis> ما را در روند سازمان‌دهی داده مطلع می‌سازد. بنابراین، یک <emphasis>قرارداد</emphasis> است.
Alas, if all we received was the <acronym>PNG</acronym> file, our software would be facing a serious problem: How is it supposed to know the data is representing an image, as opposed to some text, or perhaps a sound, or what not? Secondly, how is it supposed to know the image is in the <acronym>PNG</acronym> format as opposed to <acronym>GIF</acronym>, or <acronym>JPEG</acronym>, or some other image format? آوخ، اگر تمام چیزی که ما دریافت کردیم پروندهٔ <acronym>PNG</acronym> بود، نرم‌افزار ما با مشکل سختی مواجه می‌شد: از کجا باید می‌دانست که داده نمایانگر یک تصویر است، و نه مقداری متن، و شاید یک صدا، و نه چیزی دیگر؟ دومی، چطور باید بداند که تصویر یک <acronym>PNG</acronym> است و نه <acronym>GIF</acronym>، یا <acronym>JPEG</acronym>، یا گونه‌ای دیگر از تصویر؟
To obtain that information, we are using another protocol: <acronym>HTTP</acronym>. This protocol can tell us exactly that the data represents an image, and that it uses the <acronym>PNG</acronym> protocol. It can also tell us some other things, but let us stay focused on protocol layers here. برای بدست آوردن این اطلاعات، ما از قراردادی دیگر استفاده می‌کنیم: <acronym>HTTP</acronym>. این قرارداد می‌تواند دقیقاً به ما بگوید که داده نمایانگر یک تصویر است، و از قرارداد <acronym>PNG</acronym> استفاده می‌کند. می‌تواند چیزهای دیگری هم به ما بگوید، اما اکنون بیایید بر روی لایه‌های قرارداد متمرکز بمانیم.
So, now we have some data wrapped in the <acronym>PNG</acronym> protocol, wrapped in the <acronym>HTTP</acronym> protocol. How did we get it from the server? بسیار خوب، حال مقداری دادهٔ پیچیده شده در قرارداد <acronym>PNG</acronym>، پیچیده شده در قرارداد <acronym>HTTP</acronym> داریم. چطور این را از کارساز گرفتیم؟
By using <acronym>TCP/IP</acronym> over Ethernet, that is how. Indeed, that is three more protocols. Instead of continuing inside out, I am now going to talk about Ethernet, simply because it is easier to explain the rest that way. بدین شکل، با استفاده از <acronym>TCP/IP</acronym> بر روی اِتِرنِت. صحیح، این سه قرارداد دیگر است. به جای ادامهٔ از داخل به بیرون، اکنون می‌خواهم در مورد اترنت صحبت کنم، چرا که ساده‌تر از مابقی می‌توان توضیحش داد.
Ethernet is an interesting system of connecting computers in a <emphasis>local area network</emphasis> (<acronym>LAN</acronym>). Each computer has a <emphasis>network interface card</emphasis> (<acronym>NIC</acronym>), which has a unique 48-bit <acronym>ID</acronym> called its <emphasis>address</emphasis>. No two Ethernet <acronym>NIC</acronym>s in the world have the same address. اترنت یک سامانهٔ جالب برای ارتباط رایانه‌ها در یک <emphasis>شبکهٔ محلی</emphasis> (<acronym>LAN</acronym>) است. هر رایانه یک <emphasis>کارت شبکه</emphasis> (<acronym>NIC</acronym>) دارد، که یک <acronym>ID</acronym> ۴۸-بیتی منحصر به فرد به عنوان <emphasis>نشانی</emphasis> خود دارد. هیچ دو <acronym>NIC</acronym> در دنیا یک نشانی مشترک ندارند.

Loading…

external ref='sockets/layers' md5='__failed__'
external ref='sockets/layers' md5='__failed__'
2 months ago
Browse all component changes

Things to check

Unchanged translation

Source and translation are identical

Reset

Glossary

English Persian
No related strings found in the glossary.

Source information

Context
_
Source string comment
(itstool) path: imageobject/imagedata This is a reference to an external file such as an image or video. When the file changes, the md5 hash will change to let you know you need to update your localized copy. The msgstr is not used at all. Set it to whatever you like once you have updated your copy of the file.
Source string location
book.translate.xml:4977
String age
4 months ago
Source string age
a year ago
Translation file
books/fa/developers-handbook.po, string 831