TBB yordamida signallarga parallel ishlov berish jarayoni

|
TBB yordamida signallarga parallel ishlov berish jarayoni
|
bet | 24/27 | Sana | 18.05.2024 | Hajmi | 1,16 Mb. | | #242810 |
Bog'liq O‘zbekiston respublikasi axborot texnologiyalari va kommunikatsi
Dastur kodi:
#include
#include
#include
#include "tbb/parallel_for.h"
#include "tbb/blocked_range.h"
using namespace tbb;
using namespace std;
static const size_t N = 23;
class SubStringFinder {
const string str;
size_t *max_array;
size_t *pos_array;
public:
void operator() ( const blocked_range& r ) const {
for ( size_t i = r.begin(); i != r.end(); ++i ) {
size_t max_size = 0, max_pos = 0;
for (size_t j = 0; j < str.size(); ++j)
if (j != i) {
size_t limit = str.size()-max(i,j);
for (size_t k = 0; k < limit; ++k) {
if (str[i + k] != str[j + k]) break;
if (k > max_size) {
max_size = k;
max_pos = j;
}
}
}
max_array[i] = max_size;
pos_array[i] = max_pos;
}
}
SubStringFinder(string &s, size_t *m, size_t *p) :
str(s), max_array(m), pos_array(p) { }
};
int main() {
string str[N] = { string("a"), string("b") };
for (size_t i = 2; i < N; ++i) str[i] = str[i-1]+str[i-2];
string &to_scan = str[N-1];
size_t num_elem = to_scan.size();
size_t *max = new size_t[num_elem];
size_t *pos = new size_t[num_elem];
parallel_for(blocked_range(0, num_elem ),
SubStringFinder( to_scan, max, pos ) );
for (size_t i = 0; i < num_elem; ++i)
cout << " " << max[i] << "(" << pos[i] << ")" << endl;
delete[] pos;
delete[] max;
return 0;
}
https://stackoverflow.com/questions/45437087/how-to-install-tbb-on-windows-and-get-it-work-with-eclipse - bu link orqali biz windows operatsion tizimi uchun TBB interfeysiga kerakli kutubxonani o’rnatishimiz mumkin bo’ladi.
Xulosa
Ushbu bobning kirish qismida C++ dasturlash tili haqida qisqacha ma’lumot bilan boshladim. C++dasturlash tili terminallar, disklar va lentalar kabi turli xil qurilmalar bilan ishlash uchun mo'ljallangan. C++ tilida dastur kirish oqimidan baytlarni chiqaradi va chiqish oqimiga baytlarni kiritadi. Xamma biladigan C++ ga birinchi qo’ygan qadamdagi Hello World so'zlarini chop etadigan oddiy kodni ko'rib chiqib va uning natijasini oldim. Va ushbu bitiruv malakaviy ishimda asosiy maqsad TBB interfeysi yordamida signallarga parallel ishlov berish jarayonini C++ dasturlash tilida qo’llab ko’rdim. Bir vaqtning o’zida parallel ravishda substring da o’zgarayotgan signallarni ifodalaydi. Dastur kodlari va uning windows operatsion tizimida tbb interface kutubxonasini keltirib o’tdim.
4.1 Mehnat xavfsizligining ergonomik asoslari.
Inson hayotining xavfsizligini ta’minlash muammosi har bir jamiyat uchun dolzarb masala bo‘lib, u davlatning iqtisodiy rivojlanganligi va barqarorligiga bog‘liq. Bu hozirgi vaqtda ilmiy–texnik taraqqiyot keltirib chiqargan murakkab muammolarni har tomonlama yechishni, katta miqdorda mablag‘ va ishlab chiqarishning yuqori madaniyatini talab qiladigan muammodir. Bu esa faqat iqtisodiy qudratli, kuchli ilmiy–texnik va intellektual imkoniyatlarga ega bo‘lgan davlatning qo‘lidan keladi. Boshqa tomondan xavfsizlik muammolarining yechimi jamiyatning barcha a’zolarining faol ishtirokini, yuqori fuqarolik ongini, ayrim hollarda jamiyat, kelajak avlod manfaati uchun, shaxsiy manfaatlardan kechishini talab qiladi. Bu esa jamiyat a’zolaridan yuksak madaniyatli va kuchli ma’naviyatlikni talab qiladi. Bu tamoyillarning yechimi chuqur tahlil qilingan va tashkil qilingan uzluksiz, ya’ni ta’limning barcha o‘timlarini qamrab olgan ta’lim va tarbiya tizimlaridagina mumkin.
Ma’lumki, mustaqilligimizning dastlabki yillaridanoq mamlakatimizda ta’lim tizimi isloh qilindi va unda ta’limning uzluksizligiga katta ahamiyat berildi. Xavfsizlikni ta’minlash ruhida o‘qitish va tarbiyalash ayniqsa texnik o‘quv yurtlarida alohida ahamiyat kasb etadi. Chunki yangi texnika va texnologiyalarni bo‘lg‘usi yaratuvchilarini va ishlab chiqarish rahbarlarini shu ruhda tarbiyalash ushbu muammoni samarali bo‘lishida katta rol o‘ynaydi.
Bo‘lg‘usi mutaxassislarni shakllantirishdan asosiy maqsad har qanday muhandislik masalasini hal qilishda, bu ilmiy izlanish bo‘ladimi, loyiha– konstruktorlik ishi bo‘ladimi, ishlab chiqarishning tashkiliy va boshqaruv masalasi bo‘ladimi asosiy tamoyil–inson salomatligi va hayotini muhofaza qilish ekanligini unutmaslikdir.
Inson xavfsizligini ta’minlash ayniqsa uni ish jarayonida bevosita ishlab chiqarishda o‘z dolzarbligini ko‘rsatadi. Chunki zamonaviy korxonalarning xarakterli tomoni shundaki, unda bir korxonaning o‘zida turli–tuman va tez o‘zgaruvchan texnologik jarayonlarda materiallar, yuqori darajali mexanizatsiyalashgan va avtomatlashtirilgan, kompyuterlashgan texnika bilan jihozlangan zamonaviy potok tizimlar qo‘llanilmoqda. Bular albatta bir tomondan jarayonlarni qisqartirishga mahsulot sifatini yaxshilashga va mehnat sharoitini xavfsizlantirishga qaratilgan, lekin ikkinchi tomonidan ularda ishlovchi ishchilardan katta diqqat, sezuvchanlik va butun ish kuni davomida aqliy zo‘riqish talab qiladi. Bu esa asablarning taranglashuviga va pirovard natijada kasbiy kasallik va jarohatlarga sabab bo’lishi mumkin.
Texnologik jarayonning murakkabligi, texnologik rejimlarga bo’lgan talablarning yuqoriligi mehnat muhofazasi tadbirlariga bo’lgan talablarining ortib borishini talab qilmoqda. Ishlab chiqarish xavfsizligi muammolarini o’rganish uslubiy jihatdan murakkablashib, aktuallashib boryapti.
Korxonalarda mehnat sharoitlarini yaxshilash va yuqori xavfsizlik sathini ta’minlash uchun barcha texnik, tashkiliy, huquqiy, iqtisodiy usul va vositalarini qo’llash talab etiladi.
Mehnatni muhofaza qilish - bu tegishli qonun va boshqa me’yoriy hujjatlar asosida amal qiluvchi, insonning mehnat jarayonidagi xavfsizligi, sihat-salomatligi va ish qobiliyati saqlanishini ta’minlashga qaratilgan ijtimoiy - iqtisodiy, tashkiliy, texnikaviy, sanitariya-gigiena va davolash - profilaktika tadbirlari hamda vositalari tizimidan iborat.
Mehnatni muhofaza qilish sohasidagi davlat siyosati quyidagilarda o’z ifodasini topgan:
korxonaning ishlab chiqarish faoliyati natijalariga nisbatan xodimning hayoti va sog’lig’i ustuvorligi
mehnatni muhofaza qilish sohasidagi faoliyatni iqtisodiy va ijtimoiy siyosatning boshqa yo’nalishlari bilan muvofiqlashtirib borish;
mulk va xo’jalik yuritish shakllaridan qat’iy nazar, barcha korxonalar uchun mehnatni muhofaza qilish sohasida yagona tartib-qoidalar belgilab qo’yish;
mehnatning ekologiya jihatidan xavfsiz sharoitlari yaratilishini va ish joylarida atrof-muhit holati muntazam nazorat etilishini ta’minlash;
korxonalarda mehnatni muhofaza qilish talablari hamma joyda bajarilishini nazorat qilish;
mehnatni muhofaza qilishni mablag’ bilan ta’minlashda davlatning ishtirok etishi
oliy va o’rta maxsus o’quv yurtlarida mehnat muhofazasi bo’yicha mutaxassislar tayyorlash;
xavfsiz texnika, texnologiyalar va xodimlarni himoyalash vositalari ishlab chiqilishi va joriy etilishini rag’batlantirish;
fan, texnika yutuqlaridan hamda mehnatni muhofaza qilish bo’yicha vatanimiz va chet el ilg’or tajribasidan keng foydalanish;
ishlovchilarni maxsus kiyim va poyabzal, shaxsiy himoya vositalari, parxez ovqatlari bilan bepul ta’minlash;
korxonalarda mehnatning sog’lom va xavfsiz shart-sharoitlarini yaratishga ko’maklashuvchi soliq siyosatini yuritish;
ishlab chiqarishdagi har bir baxtsiz hodisani va har bir kasb kasalligini tekshirib chiqish hamda hisobga olib borishning va shu asosda ishlab chiqarishdagi jarohatlanishlar hamda kasb kasalliklariga chalinishlar darajasi haqida aholini xabardor qilishning majburiyligi;
ishlab chiqarishdagi baxtsiz hodisalardan jabrlangan yoki kasb kasalligiga yo’liqqan ishlovchilarning manfaatlarini ijtimoiy himoyalash;
kasaba uyushmalari va boshqa jamoat birlashmalari, korxonalar va alohida shaxslarning mehnatni muhofaza qilishni ta’minlashga qaratilgan faoliyatini har tomonlama qo’llab-quvvatlash;
mehnatni muhofaza qilish muammolarini hal etish chog’ida xalqaro hamkorlikni yo’lga qo’yish prinsiplariga asoslanadi.
|
| |