Tutorial

Apakah benang pemproses? perbezaan dengan nukleus

Isi kandungan:

Anonim

Dalam artikel ini kita akan mengambil masa untuk menjelaskan apa yang menjadi benang pemproses atau juga dipanggil benang dalam bahasa Inggeris atau benang pengaturcaraan, untuk mengenal pasti perbezaan asas antara ini dan teras pemproses. Di antara ahli kurang dan juga pengguna yang lebih maju, masih terdapat sedikit kekeliruan mengenai topik ini. Itulah sebabnya kami telah menetapkan untuk menjelaskan syarat-syarat ini sejauh mungkin.

Konsep benang pemprosesan ini tidak penting untuk diketahui apabila membeli pemproses untuk pengguna biasa. Dalam kebanyakan kes, lebih baik daripada kurang, itu hampir selalu benar. Di mana kita perlu tahu apa benang, ada dalam kerja pembangunan program. Bergantung kepada bagaimana aplikasi diprogramkan dan disusun, ia akan mempunyai lebih banyak pelaksanaan yang dioptimumkan untuk pemproses dengan lebih banyak benang daripada teras. Dan ini adalah di mana kita akan cuba untuk mendapatkan penjelasan kami.

Indeks kandungan

Apakah teras pemproses?

Kami akan mulakan dengan menerangkan apa teras-teras pemproses kami, jadi kami akan mendapat pengetahuan sebelum ini agar tidak keliru.

Kami tahu bahawa pemproses bertanggungjawab untuk melaksanakan dan melaksanakan arahan program yang dimuatkan dalam memori RAM komputer kami. Secara praktikal, semua arahan yang diperlukan untuk menjalankan tugas biasa pada PC kami, mengemudi, menulis, melihat gambar, dan sebagainya. Dalam bahagian fizikal, pemproses adalah litar bersepadu yang terdiri daripada berjuta-juta transistor yang membentuk pintu masuk logik untuk lulus atau tidak melewati bit data dalam bentuk tenaga, tanpa berlengah lagi.

Nah, cip kecil ini mempunyai modul yang berbeza yang boleh kita panggil nukleus, sebagai tambahan kepada elemen lain yang kita tidak berminat sekarang. Pemproses beberapa tahun lalu hanya mempunyai satu teras ini, dan dapat memproses satu arahan setiap kitaran. Kitaran ini diukur dalam Megahertz (MHz), lebih banyak MHz, lebih banyak arahan yang boleh kita lakukan setiap saat.

Sekarang kita tidak hanya mempunyai satu teras, tetapi beberapa. Setiap teras mewakili subprocessor, iaitu, masing-masing subprocessor akan melaksanakan salah satu arahan ini, dengan itu dapat melaksanakan beberapa dari mereka dalam setiap kitaran jam dengan CPU multi-core. Sekiranya kita mempunyai pemproses 4-teras, kita boleh melaksanakan 4 arahan pada masa yang sama bukan hanya satu. Jadi peningkatan prestasi berkala empat kali. Jika kita mempunyai 6, maka 6 arahan pada masa yang sama. Ini adalah bagaimana pemproses semasa kini lebih berkuasa daripada yang lebih tua.

Dan ingatlah, teras ini secara fizikal hadir dalam pemproses kami, ia bukan sesuatu yang maya atau dicipta oleh kod.

Apakah benang pemprosesan?

Benang, benang, atau benang bukan sebahagian fizikal dari pemproses, tidak sekurang-kurangnya ketika datang ke lebih banyak teras atau sesuatu seperti itu.

Kita boleh menentukan thread pemprosesan sebagai aliran kawalan data sesuatu program. Ia adalah satu cara yang membolehkan menguruskan tugas pemproses dan teras yang berbeza dengan cara yang lebih berkesan. Terima kasih kepada benang, unit peruntukan minimum, yang merupakan tugas atau proses sesuatu program, boleh dibahagikan kepada beberapa bahagian untuk mengoptimumkan masa menunggu setiap arahan dalam barisan proses. Potongan ini dipanggil benang atau benang.

Dalam erti kata lain, setiap benang pemprosesan mengandungi sekeping tugas yang akan dijalankan, sesuatu yang lebih mudah untuk dijalankan daripada jika kita memperkenalkan tugas lengkap dalam nukleus fizikal. Dengan cara ini , CPU dapat memproses beberapa tugas pada masa yang sama dan pada masa yang sama, sebenarnya, ia dapat melakukan banyak tugas kerana ia mempunyai benang, dan biasanya terdapat satu atau dua untuk setiap inti. Dalam pemproses yang mempunyai contoh 6 teras dan 12 benang, mereka akan dapat membahagikan proses ke dalam 12 tugas yang berbeza dan bukan hanya 6.

Cara kerja ini menjadikan sumber sistem dapat diurus dengan lebih adil dan efisien. Anda tahu… dia membahagikan dan anda akan menang sepanjang hidup. Pemproses ini dipanggil berbilang thread. Buat masa ini, apa yang harus kita jelaskan adalah bahawa pemproses dengan 12 benang tidak akan mempunyai 12 teras, terasnya adalah sesuatu yang berasal dari fizikal dan benang yang berasal dari logik.

Ini pastinya agak sukar difahami dan sukar difahami, jadi mari kita lihat bagaimana ia diterjemahkan jika kita bercakap mengenai seni bina sesuatu program di komputer kita.

Program, proses dan benang

Kita semua tahu apa program, ia adalah kod yang disimpan dalam komputer kita dan yang ditakdirkan untuk menjalankan tugas tertentu. Aplikasi adalah program, pemandu juga merupakan program dan bahkan sistem operasi adalah program yang mampu melaksanakan program lain di dalamnya. Kesemuanya disimpan dalam bentuk binari, kerana pemproses hanya memahami bilangan dan nol, semasa / bukan semasa.

Proses program

Untuk menjalankan program, ia dimuatkan ke dalam memori, RAM. Program ini dimuatkan oleh proses, yang membawa kod perduaan dan sumber daya yang diperlukan untuk menjalankannya, yang akan diberikan "bijak" oleh sistem operasi.

Sumber asas keperluan proses adalah counter program dan timbunan rekod.

  • Kaunter program (CP): ia dipanggil penunjuk arahan, dan ia menjejaki urutan arahan yang sedang diproses. Daftar: ia adalah gudang yang terletak di pemproses di mana arahan, alamat penyimpanan atau data lain boleh disimpan. Stack: ia adalah struktur data yang menyimpan maklumat yang berkaitan dengan keadaan yang program telah aktif dalam komputer.

Kemudian setiap program dibahagikan kepada proses, dan disimpan di tempat tertentu dalam memori. Juga, setiap proses dijalankan secara berasingan, dan ini sangat penting untuk difahami kerana ini adalah bagaimana pemproses dan sistem mampu melaksanakan pelbagai tugas pada masa yang sama, yang kita sebut sistem multitasking. Sistem pemprosesan ini adalah punca yang kita boleh teruskan bekerja pada PC kita, walaupun program telah disekat.

Benang satu proses

Di sinilah benang pemprosesan, yang disebut benang dalam sistem operasi, muncul. Satu benang adalah unit pelaksanaan proses. Kita boleh membahagikan proses menjadi benang, dan masing-masing akan menjadi benang pelaksanaan.

Jika program tidak berbilang thread, proses di dalamnya hanya akan mempunyai satu thread, jadi ia hanya boleh diproses pada satu masa. Sebaliknya, jika kita mempunyai proses multi-threaded, ini boleh dibahagikan kepada beberapa bahagian, dan setiap benang tersebut berkongsi sumber yang diberikan kepada proses tersebut. Jadi kami berkata bahawa multithreading lebih berkesan.

Di samping itu, setiap benang mempunyai timbunan rekod tersendiri supaya dua atau lebih daripada mereka dapat diproses pada masa yang sama, tidak seperti satu proses tunggal, yang perlu dijalankan sekaligus. Thread adalah tugas mudah yang membolehkan anda menjalankan proses dalam mode perpecahan. Dan pada dasarnya ini adalah fungsi akhir benang pemprosesan. Semakin banyak benang, lebih banyak pembahagian proses, dan semakin banyak pengiraan serentak dan, oleh itu, semakin besar kecekapan.

Kami belum selesai, kami masih mempunyai soalan yang belum selesai Apa yang berlaku kemudian dengan teras dengan benang dua kali ? Kami telah mengatakan bahawa setiap kernel mampu melaksanakan arahan tunggal pada satu masa. CPU mempunyai algoritma kompleks yang membahagikan masa pelaksanaan dengan cara yang paling berkesan, dengan itu menyerahkan setiap tugas selang pelaksanaan tertentu. Perubahan antara tugas sangat cepat, ia akan memberi perasaan bahawa nukleus melaksanakan tugas secara selari.

Bolehkah kita melihat benang atau benang dalam sistem?

Tidak terlalu terperinci cara, tetapi ya, kita dapat melihatnya, baik pada Windows dan Mac.

Dalam kes Windows, kita hanya perlu membuka pengurus tugas dan pergi ke " prestasi ". Kemudian kami akan mengklik pautan " monitor sumber " di bawah. Dalam tetingkap baru ini, kami akan mempunyai setiap proses dibahagikan kepada penggunaan CPU dan benang, ini akan menjadi benang.

Dalam pemantau aktiviti Mac, kami akan mempunyai secara langsung benang yang disenaraikan di skrin utama.

Ini menyimpulkan artikel kami tentang apa benang pemprosesan CPU. Ia pastinya satu topik yang agak rumit untuk dijelaskan dan agak abstrak, terutama bagi pengguna yang tidak memahami sepenuhnya bagaimana proses pemproses. Tetapi dalam kes ini kita mempunyai berita baik kerana kita juga mempunyai artikel yang cukup baik bercakap tentang bagaimana seorang pemproses berfungsi dan bagaimana keseluruhan kitaran arahan dilakukan.

Lawati artikel kami di:

Kami berharap segala-galanya lebih jelas atau kurang, dan kami menghargai bahawa anda telah memilih kami untuk mengetahui lebih lanjut mengenai topik ini.

Tutorial

Pilihan Editor

Back to top button