img uzantılı ürün yazılımına sahip bir tabletin yanıp sönmesi için bir program. İmg ürün yazılımını düzenleme. Ext4 sistem görüntüsünün sökülmesi

MTwinTools, ürün yazılımı dosyaları ve boot.img, Recovery.img ve system.img görüntüleri ile çalışmanıza olanak tanıyan bir yardımcı programdır. Yardımcı programın yazarı 4pda forumundan vin2809'dur. MTwinTool sahipleri için faydalı olacak Huawei akıllı telefonlar MTK işlemcilerine dayanmaktadır.

MTwinTools ile çalışmaya yönelik Kullanım Kılavuzu

1. Giriş.

1.1. Amaç.

MTwinTools aracı, MT çiplerini temel alan cihazların görüntülerini sökmek/birleştirmek için tasarlanmıştır.

Kullanım için üretilmiştir Komut satırı RK29xx-RK31xx yongalarındaki cihazlarla ve bazı serbestçe dağıtılan programlarla çalışmak üzere tasarlanmış RKwinTools aracını temel alır.

CYGWIN'i yüklemeden yalnızca Windows 7 ve üzeri sürümlerde çalışır ve ayrıca herhangi bir ek yol kaydı gerektirmez. Ortam DeğişkenleriİŞLETİM SİSTEMİ.

Araç şunları yapmanızı sağlar:

  • Boot.img görüntüsünün paketini açın ve paketleyin;
  • Recovery.img görüntüsünü paketinden çıkarın ve paketleyin;
  • Kernel.img görüntüsünü paketinden çıkarın ve paketleyin;
  • hem yaffs tipi hem de ext2-ext4 olan System.img görüntüsünü paketinden çıkarın ve paketleyin;
  • sparse türündeki seyrek bir dosyayı ext4 türündeki bir görüntüye dönüştürün;
  • md5 formatındaki bir dosyanın sağlama toplamını hesaplayın;
  • SuperUser'ı başlatın.

1.2. MTwinTools'u yükleme.
Aracın kurulumu arşivin size uygun herhangi bir yerde açılmasıyla gerçekleştirilir. Bu, aşağıdakileri içeren bir MTwinTools klasörü oluşturacaktır:

  • klasörler _In/, App/ ve Cygwin/;
  • Readme.txt ve menu.bat dosyalarının yanı sıra.

_In klasörü boştur ve işlenecek kaynak görüntüleri içermesi amaçlanmıştır. App/ klasörü, görüntüleri işleyen bir dizi komut dosyası içerir. Cygwin/ klasörü serbestçe yeniden dağıtılabilen yardımcı program kitaplıkları ve dosyaları içerir. Benioku.txt dosyası kullanıcı talimatlarını içerir; şu anda okuduğunuz metin. Menu.bat dosyası MTwinTools araç menüsünü oluşturmak için kullanılır.

DİKKAT. Windows işletim sistemi ortam değişkenlerinde hizmet dosyalarına erişim yollarını belirtmek için GEREKLİ DEĞİLDİR.

Siz çalışırken diğer gerekli klasörler görünecektir:

  • Daha sonra Önyükleme, Kurtarma ve Sistem dosyalarını içerecek paket
    paketleri, sağlama toplamına sahip dosyaları içeren bir md5 klasörü ve bir klasör
    Birleştirilmiş Önyükleme dosyalarının bulunacağı Görüntü alt klasöründeki ürün yazılımı,
    Kurtarma ve Sistem;
  • Önyükleme, Kurtarma ve Sistem dosyalarının TAMAMEN açıldığı Paketi Açma
    Firmware klasöründe Görüntü alt klasöründe yer alacaktır.

1.3. MTwinTools'u kaldırma.

Araç, aracın kök klasörü silinerek kaldırılır; MTwinTools klasörleri.

2. Temel çalışma kuralları.

2.1.Başlamak için aracın menüsünü başlatacak menu.bat dosyasını çalıştırmanız gerekir.

2.2.Paketin açılması amaçlanan görseller, aracın _In klasörüne yerleştirilmelidir. Giriş dosyalarının adları anahtar sözcükler içermelidir ZORUNLU ve aşağıdaki gibi adlara sahip olabilir:

  • *önyükleme*.img;
  • *kurtarma*.img;
  • *çekirdek*.img;
  • *sistem*.img.

2.3.İlk kez çalıştırırken aleti başlatın. Araç başlatıldığında, _In klasöründe bulunan TÜM dosyalar Unpack/Firmware/Image çalışma giriş klasörüne kopyalanacaktır. Bu, orijinal dosyaları korumak için yapılır.

2.4.Görüntüyü parçalara ayırdıktan sonra içeriği, aşağıdaki klasör yapısının oluşturulacağı Paketi Açma klasörüne yerleştirilecektir:

Önyükleme(Kurtarma)/cfg/
çekirdek/
RAM diski/

cfg/ klasörü görüntü ayarlarını içerecektir, çekirdek klasöründe çekirdeği bulacaksınız, yani. zImage ikili dosyası ve ramdisk klasörü diğer her şeyi içerecektir. Görüntüyü birleştirmek için bileşen parçaları, ör. Ramdisk'i, çekirdeği ve muhtemelen ayarları Unpack'teki uygun klasörlere yerleştirin. Oluşturulan görüntü Paket çıktı klasöründe bulunacaktır.

3. Ürünün açıklaması.

3.1. Ana komut menüsü.

Araç komutlarının ana menüsü şuna benzer:

**************************
* MTwinTools_V_0.6 *
**************************
*Resim komutları:*
* ————— *
*1-Önyükleme*
*2-İyileşme*
*3-Çekirdek*
*4-Sistem*
*5-Diğer komutlar*
* *
**************************
* Araç komutları: *
* ————— *
*6-Başlatma Araçları*
*7-Temiz*
* *
**************************
*8-Çıkış*
**************************
Lütfen komutu seçin:

Bir komut, önünde belirtilen sayı girilerek seçilir. Mevcut sürümde aşağıdakileri yapabilirsiniz:

— “1” sayısını yazarak Önyükleme görüntüsü işleme menüsüne gidin;
— Kurtarma görüntüsü işleme menüsüne gidin — “2”;
— Çekirdek görüntü işleme menüsüne gidin — “3”;
— Sistem görüntü işleme menüsüne gidin — “4”;
- diğer komutların menüsüne gidin - “5”;
- aletin çalışma alanını başlatın - “6”;
- ürünün çalışma alanını temizleyin - “7”;
— işi tamamlayın, yani. tesisten çıkın - “8”.

3.2. Önyükleme menüsü.

Önyükleme görüntüsünü işlemeye devam etmek için “1-Boot” komutunu çalıştırın. Bu sizi “Önyükleme komutları” menüsüne götürecektir.

Önyükleme görüntüsü işleme menüsü şuna benzer:

**************************
* Önyükleme komutları: *
* ————— *
*1-Önyükleme paketini açma*
*2-Önyükleme paketi*
* *
**************************
*3-Geri Dönüş*
**************************
Lütfen komutu seçin:

Komut “1” Önyükleme yansımalarını açar, komut “2” Önyükleme yansımalarını paketler. “3” komutu aracın ana menüsüne döner.

2.2.1. Boot.img görüntüsünün sökülmesi.

2.2.2. Boot.img görüntüsünü oluşturun.

Önyükleme görüntüsünü oluştururken veri kaynağı seçimine yönelik bir menü görünecektir.

**************************
* Seçim kaynak resmi: *
* 1. Dizinin paketini açın *
* 2. Paket yönlendirmesi *
*3.Dönüş*
**************************
Lütfen kaynağı seçin:

Unpack/Boot klasöründe bulunan paketlenmemiş bir görüntüden görüntü oluşturma olanağına sahipsiniz; bunu yapmak için “1. Dizin paketini açın. “2. Pack dir" komutunu kullanırsanız, görüntü Pack/boot klasöründe bulunan verilerden oluşturulacaktır. İşlemi iptal etmek için “3. Geri dönmek". Aynı zamanda sen
“Önyükleme komutları” menüsüne dönün.

3.3. Kurtarma menüsü.

Kurtarma görüntüsünü işlemeye devam etmek için “2-Kurtarma” komutunu çalıştırın. Bu sizi “Kurtarma komutları” menüsüne götürecektir. Kurtarma görüntüsü işleme menüsü şuna benzer:

**************************
* Kurtarma komutları: *
* —————— *
* 1-Kurtarma paketinin açılması *
* 2-Kurtarma paketi *
* *
**************************
*3-Geri Dönüş*
**************************
Lütfen komutu seçin:

Komut "1" Kurtarma görüntülerini paketler, komut "2" ise Kurtarma görüntülerini paketler. “3” komutu aracın ana menüsüne döner.
2.3.1. Recovery.img görüntüsünün sökülmesi.

Tüm eylemler otomatik olarak gerçekleştirilir; Katılımınız olmadan burada açıklanacak hiçbir şey yoktur.

2.3.2. Recovery.img görüntüsünü oluşturun.

Kurtarma görüntüsünü oluştururken veri kaynağı seçimine yönelik bir menü görünecektir.

**************************
* Seçim kaynak resmi: *
* 1. Dizinin paketini açın *
* 2. Paket yönlendirmesi *
*3.Dönüş*
**************************
Lütfen kaynağı seçin:

Paketten çıkarma/kurtarma klasöründe bulunan paketlenmemiş bir görüntüden bir görüntü oluşturma olanağına sahipsiniz; bunu yapmak için “1. Dizin paketini açın. “2. Pack dir" komutunu kullanırsanız, görüntü Pack/recovery klasöründe bulunan verilerden oluşturulacaktır.

İşlemi iptal etmek için “3. Geri dönmek". Bu sizi “Kurtarma komutları” menüsüne döndürecektir.

3.4. Çekirdek menüsü.

Çekirdek görüntüsünü işlemeye devam etmek için “3-Çekirdek” komutunu çalıştırın. Bu sizi “Çekirdek komutları” menüsüne götürecektir.

Çekirdek görüntü işleme menüsü şuna benzer:

**************************
* Çekirdek komutları: *
* —————— *
* 1-Çekirdek paketini açma *
*2-Çekirdek paketi*
* *
**************************
*3-Geri Dönüş*
**************************
Lütfen komutu seçin:

Komut “1” Çekirdek görüntülerini açar, komut “2” Çekirdek görüntülerini paketler. “3” komutu aracın ana menüsüne döner.

3.4.1. Kernel.img görüntüsünün sökülmesi.

Tüm eylemler otomatik olarak gerçekleştirilir; Katılımınız olmadan burada açıklanacak hiçbir şey yoktur.

3.4.2. Kernel.img görüntüsünü oluşturma.

Çekirdek görüntüsünü oluştururken veri kaynağı seçimine yönelik bir menü görünecektir.

**************************
* Seçim kaynak resmi: *
* 1. Dizinin paketini açın *
* 2. Paket yönlendirmesi *
*3.Dönüş*
**************************
Lütfen kaynağı seçin:

Unpack/Çekirdek klasöründe bulunan paketlenmemiş bir görüntüden bir görüntü oluşturma olanağına sahipsiniz; bunu yapmak için “1. Dizin paketini açın. “2. Pack dir" komutunu kullanırsanız, görüntü Pack/Kernel klasöründe bulunan verilerden oluşturulacaktır.

İşlemi iptal etmek için “3. Geri dönmek". Bu sizi “Çekirdek komutları” menüsüne döndürecektir.

3.5. Menü Sistemi.

Sistem görüntüsünü işlemeye devam etmek için “3-Sistem” komutunu çalıştırın. Bu sizi “Sistem komutları” menüsüne götürecektir.

Sistem görüntü işleme menüsü şuna benzer:


* Sistem komutları: *
* ——————————————— *
* 1'li paket * 2'li paket *
* 3-ext3 paketini açın * 4-ext3 paketi *
* 5'li ext4 paketini açın * 6'lı ext4 paketi *
* 7-seyrek ext4'e * *
* * *
***************************************************
*8-Geri Dönüş*
***************************************************
Lütfen komutu seçin:

3.5.1. Yaffs gibi bir sistem görüntüsünün sökülmesi.

“1” komutu, yaffs türündeki Sistem görüntülerini Unpack/System klasörüne açar.

3.5.2. Yaffs gibi bir sistem görüntüsü oluşturmak.

Komut “2”, yaffs tipindeki Sistem görüntülerini paketler. Bir veri kaynağı seçmek için bir menü görünecektir.

**************************
* Seçim kaynak resmi: *
* 1. Dizinin paketini açın *
* 2. Paket yönlendirmesi *
*3.Dönüş*
**************************
Lütfen kaynağı seçin:

Unpack/system klasöründe bulunan paketlenmemiş bir görüntüden bir görüntü oluşturma olanağına sahipsiniz; bunu yapmak için “1. Dizin paketini açın. “2. Pack dir" komutunu kullanırsanız, görüntü Pack/system klasöründe bulunan verilerden oluşturulacaktır.

İşlemi iptal etmek için “3. Geri Dön” ve önceki “Sistem komutları” menüsüne döneceksiniz.

3.5.3. Ext3 tipi sistem görüntüsünün sökülmesi.

Komut “3”, ext2-ext3 türündeki Sistem görüntülerini Unpack/System klasörüne açar.

3.5.4. Ext3 türünde bir sistem görüntüsü oluşturma.

Komut “4” ext2-ext3 tipindeki Sistem görüntüsünü oluşturur. Paketleme madde 3.5.2'ye benzer şekilde gerçekleştirilir. yalnızca çıktı görüntüsü ext3 türünde olacaktır.

3.5.5. Ext4 tipi sistem görüntüsünün sökülmesi.

“5” komutu ext4 Sistem görüntülerini Unpack/System klasörüne açar.

3.5.6. Ext4 türünde bir sistem görüntüsü oluşturma.

Komut “6” ext4 tipinde Sistem imajını oluşturur. Paketleme madde 3.5.2'ye benzer şekilde gerçekleştirilir. yalnızca çıktı görüntüsü ext4 türünde olacaktır.

3.5.7. Seyrek sıkıştırılmış görüntüyü ext4'e dönüştürün.

“7” komutu, seyrek türdeki sıkıştırılmış görüntüleri ext4 türündeki görüntülere (simg2img işlemine benzer) dönüştürür (dönüştürür veya kod dönüştürür).

3.5.8.Ana menüye dönüş.

“8” komutu aracın ana menüsüne geri döner.

3.6. Diğer komutların menüsü.

Diğer komutların çalıştırılmasına geçmek için “5-Diğer komutlar” komutunu çalıştırın. Bu sizi “Diğer komutlar” menüsüne götürecektir. Diğer komutları yürütme menüsü şuna benzer:

**************************
* Diğer komutlar: *
* —————- *
*1 Girişli Süper Kullanıcı*
* 2-md5'i hesaplayın *
* *
**************************
*3-Geri Dönüş*
**************************
Lütfen komutu seçin:

Komut “1” Sistem görüntüsünde Süper Kullanıcıyı başlatır, komut “2” dosya sağlama toplamını hesaplar. “3” komutu aracın ana menüsüne döner.

3.6.1. SuperUser başlatılıyor.

SuperUser'ı başlatırken bir kaynak seçim menüsü görünecektir:

**************************
* Seçim kaynağı girişi: *
* 1. Dizinin paketini açın *
* 2. Paket yönlendirmesi *
*3.Dönüş*
**************************
Lütfen kaynağı seçin:

Unpack/system klasöründe bulunan paketlenmemiş görüntüyü başlatma olanağına sahipsiniz; bunu yapmak için “1. Dizin paketini açın. “2. Pack dir" komutunu seçerseniz Pack/system klasöründe bulunan görüntü başlatılacaktır. İşlemi iptal etmek için “3. Geri dönmek".
Başlatma kopyalama yoluyla yapılır gerekli dosyalar(su ve SuperSU.apk) demonte edilmiş System.img görüntüsüne kopyalayın. Kök erişimi elde etmek için şunlara ihtiyacınız vardır:

— Ana menünün “3” komutunu kullanarak Sistem görüntüsünün paketini açın
araçları kullanın veya paketten çıkarılan görüntüyü Unpack (veya Pack)/System/ klasörüne yerleştirin;
— “Diğer komutlar” menüsünde “1-init SuperUser” komutunu çalıştırın.

System.img imajını flashladıktan sonra cihazınızda Root erişimine sahip olacaksınız. Cihazınızda Root erişimi elde etmek için farklı bir sürüme ait dosyalar kullanılıyorsa, App/ klasöründeki su ve SuperSU.apk dosyalarını güncellemeniz (değiştirmeniz) yeterlidir.

3.6.2. Sağlama toplamı hesaplaması.

Bir dosya veya dosyaların sağlama toplamını hesaplamak için bunları Pack/md5/ klasörüne yerleştirin. “2-Calculate md5” komutunu çalıştırdıktan sonra Pack/md5 klasöründe bulunan tüm dosyalar eklenecektir. çek toplamı md5 algoritması kullanılarak hesaplanır. Yalnızca uzantısı olmayan veya .img, .tar, .zip uzantılı dosyalar işlenir.

3.7. Başlatma.

Başlatmayı gerçekleştirmek için “6-init Tools” komutunu çalıştırın. Bu, MTwinTools'un çalışması için gerekli tüm klasör yapılarını oluşturacak ve giriş görüntülerini Unpack/Firmware/Image çalışma klasörüne kopyalayacaktır.

3.8. Ürünün temizlenmesi.

Çalışma alanını temizlemek için “7-CLEAN” yazın. Bu durumda, TÜM ek klasörler içerikleriyle birlikte silinecek, MTwinTools çalışmasını tamamlayacak ve kurulumdan hemen sonra sahip olduğu formu alacaktır.

3.9. Çıkış.

Çıkmak için “8-Çıkış”ı çevirin. Bu durumda SADECE ürün hiçbir temizlik yapılmadan çıkacaktır.

İnterpolasyon, interpolasyon- hesaplamalı matematikte, mevcut ayrı bir bilinen değerler kümesinden bir miktarın ara değerlerini bulma yöntemi.

Bilimsel ve mühendislik hesaplamalarıyla uğraşanların çoğu, sıklıkla ampirik olarak veya rastgele örnekleme yoluyla elde edilen değer kümeleriyle çalışmak zorunda kalır. Kural olarak, bu kümelere dayanarak, elde edilen diğer değerlerin yüksek doğrulukla düşebileceği bir fonksiyon oluşturmak gerekir. Bu göreve denir yaklaşım. İnterpolasyon, oluşturulan fonksiyonun eğrisinin tam olarak mevcut veri noktalarından geçtiği bir yaklaşım türüdür.

Birçok sonlu fark enterpolasyonu yöntemi vardır. En
Newton'un ileri enterpolasyon yöntemi (Newton-Gregory yöntemi) yaygındır. Bu durumda enterpolasyon polinomu şu şekildedir:

Aşağıdaki formülü kullanarak C katsayılarını buluyoruz:

Programın C# dilinde uygulanması:
Sistemi kullanarak; ad alanı Enterpolasyonu (sınıf Programı…

Sıralama algoritmalarının görselleştirilmesi

Program, birinde sıralamanın yapıldığı, diğerinde ise yeniden çizimin yapıldığı iki konuya bölünmüştür. GUI. “Sırala” butonuna tıkladıktan sonra program, sıralama algoritmasının tanımlandığı ve içinde çalışan sıralama işlemiyle yeni bir iş parçacığının oluşturulduğu “RunSorting” yöntemini çağırır.
özel geçersiz RunSo…

KT819G'de Kacher Brovina

Bugün geçen kış tatilinde yaptığım Kacherimi göstermek istiyorum. İnternette çok sayıda makale olduğu için tüm üretim sürecini anlatmayacağım. Sadece ana parametreleri hakkında yazacağım.

Aşağıda cihazın montajı sırasında çekilen birkaç fotoğraf bulunmaktadır.

Bobin, 50 mm çapında ve 200 mm yüksekliğinde bir PVC boru üzerine yaklaşık 2000 tur 0,08 mm tel ile sarılır.

Terminal olarak eski bir plaka kullanıldı. sabit disk. Geriye kalan her şey sayfanın en altında bulunan şemaya göre toplandı.

İlk seçenek, 12 V voltajlı eski bir bilgisayarın güç kaynağından beslendi. Daha sonra 30 V voltajlı ve dahili soğutmalı ayrı bir güç kaynağı yapıldı.

Cihaz şeması:

CORS nedir ve nasıl kullanılır?

Etki alanları arası kaynak paylaşımı (CORS), tarayıcıda etki alanları arası iletişime izin veren bir W3C spesifikasyonudur. CORS, XMLHttpRequest nesnesinin üzerine inşa ederek geliştiricilerin aynı etki alanındaki isteklerle aynı deyimlerle çalışmasına olanak tanır. CORS'un kullanım durumu basittir. Alice.com'un bob.com'un elde etmek istediği bazı verilere sahip olduğunu düşünün. Aynı tarayıcı menşei politikası kapsamında bu tür isteğe geleneksel olarak izin verilmez. Ancak alice.com, CORS isteklerini destekleyerek bob.com'un verilere erişmesine olanak tanıyan bazı özel yanıt başlıkları ekleyebilir. Bu örnekten de görebileceğiniz gibi CORS desteği, sunucu ve istemci arasında koordinasyon gerektirir. Şans eseri, eğer istemci tarafında bir geliştiriciyseniz bu ayrıntıların çoğundan korunursunuz. Bu makalenin geri kalanında istemcilerin çapraz kaynak isteklerini nasıl gerçekleştirebilecekleri ve sunucuların kendilerini CORS'u destekleyecek şekilde nasıl yapılandırabilecekleri gösterilmektedir. Devam etti…

Neredeyse herkes android kullanıcısı akıllı telefon, ihtiyaçlarınıza ve isteklerinize uyacak şekilde ürün yazılımını oluşturma veya düzenleme arzusu vardı. Bu yazıda CWM için donanım yazılımını (zip formatında) düzenleme ilkesine bakacağız.

Hazırlık:

Öncelikle hangi firmware'i temel olarak kullanacağımıza karar vermemiz gerekiyor. Kapalı kullanmak daha iyidir. zip'teki ürün yazılımı. Hemen hemen her yaygın cihaz için temiz bir ürün yazılımı + kök vardır.
Ürün yazılımı seçildiğinde, bilgisayarınızda sizin için uygun olan herhangi bir konuma indirilmesi gerekir (paketten çıkarmanıza gerek yoktur).
Ayrıca bir arşivleyiciye de ihtiyacımız olacak, kullanmanızı öneririm 7zip ve türünün en iyisi Metin düzeltici Not Defteri++.

Firmware yapısı:

Arşivi ürün yazılımıyla açtığınızda aşağıdakileri görürsünüz:
META-INF- Klasör, ürün yazılımı yükleme komut dosyalarını içerir.
sistem- tüm ürün yazılımı dosyalarını (uygulamalar, ince ayarlar, komut dosyaları vb.) içeren bir klasör.
boot.img- sistemin çekirdeği.

Neredeyse tüm manipülasyonlar klasörde gerçekleştirilir sistem, yapısı:
uygulama- sistem uygulamaları.
çöp Kutusu- sistemin kendi kaynakları.
vesaire- Komut dosyaları, ince ayarlar, yapılandırmalar, profiller ve sistem ayarları.
yazı tipleri- Sistem yazı tipleri.
çerçeve- ana sistem dosyaları burada saklanır (grafikler, animasyon metni ayarları vb.).
kitap- sistem kitaplıkları.
medya- multimedya dosyaları (bildirim zil sesleri, yükleme animasyonu, duvar kağıdı vb.).
usr- gelecekte sistem tarafından değiştirilemeyecek ayarlar (salt okunur modda çalışırlar).
xbin- yine sistem yapılandırmaları ve diğer ayarlamalar.
build.prop- sistem, yerel ayarlar ve sistem performansı hakkında bilgiler.

Uygulamalar:

Sisteme yazılım eklemeden/kaldırmadan önce, firmware'inizin deodex yapılıp yapılmadığını kontrol etmeniz gerekir (yani, uygulama klasöründe .odex dosyalarının varlığını kontrol edin. Dosyalar varsa, bunu kullanarak onlardan kurtulmanız gerekir.) talimatlar .
Firmware'e yazılım ekleyin:
Öncelikle montaja eklemek istediğiniz programları smart'ınıza yüklemeniz gerekir. Kurulumdan sonra bunları kullanarak sistemden kaldırıyoruz. Kök Gezgini ve analogları, veri/uygulama yolunda bulunurlar, ayrıca onların kütüphanelerine de ihtiyacımız var (tabii ki mevcutlarsa), veri/veri yolunda bulunurlar. Uygulamada aynı isimli klasörde bulunurlar ve uzantıya sahiptirler. .Bu yüzden. Daha sonra ele geçirildi .apk dosyaları sistem/uygulama yolu boyunca arşive ve uzantılı dosyalara yerleştirin .Bu yüzden(libs) system/lib yolu boyunca.
Yazılımı ürün yazılımından kaldırıyoruz:
Burada her şey basit, klasöre gidin uygulama- neye ihtiyacımız olmadığına karar veriyoruz ve gereksiz tüm yazılımları kaldırıyoruz (sisteme dokunmamak daha iyidir).

Dil ve donanım yazılımı sürümü:

Build.prop dosyasını masaüstünüze kopyalayın. Not defteri ile açın ve şu satırları bulun:

ro.product.locale.language=tr
ro.product.locale.region=ABD

Rus dili için bunu yapmanız gerekir:

ro.product.locale.language=tr
ro.product.locale.region=RU

satıra modunuzun adını girin

aynı build.prop'ta

Grafik Sanatları:

Ürün yazılımının tüm grafik kısmı iki dosya framework-res.apk dosya yolunda saklanır sistem çerçevesi ve SystemUI.apk yol boyunca sistem uygulaması. Ayarlar uygulamasının grafik kısmı da doğal olarak Settings.apk uygulamasında saklanır.

Komut dosyaları ve ince ayarlar (sistem hızlandırma ve optimizasyon):

Ayarların çoğu dosyada yapılır build.prop, bunun hakkında okuyabilirsiniz. Ayrıca, eğer çekirdeğiniz destekliyorsa başlangıç.d sistemi optimize etmek için bir dizi komut dosyası vardır; bunlardan biri bu makalede anlatılmıştır. (RAM optimizasyonu) ve bu makalede init.d için komut dosyalarını düzenleyin

Sistem yazı tiplerini değiştirme:

Yukarıda belirtildiği gibi tüm yazı tipleri klasörde bulunur yazı tipleri, ana yazı tipleri şunlardır: DroidSans.ttf ve DroidSans-Bold.ttf, herhangi bir yazı tipiyle değiştirilebilir, bunları yukarıdakine benzer şekilde yeniden adlandırabilir ve değiştirilerek klasördeki ürün yazılımıyla arşive taşınabilir. yazı tipleri.

Çekirdek:

Teorik olarak değiştirmek yeterlidir boot.img kendine aittir, ancak bazı durumlarda Çekirdeklere ek komut dosyaları eşlik eder. Bu nedenle şüpheniz varsa hiçbir şey yapmamanızı tavsiye ederim.



Linux'a ihtiyacınız olduğu gerçeğiyle başlayalım. Windows'ta bellenimi yalnızca parçalarına ayırabilirsiniz, ancak tamamen teknik nedenlerden dolayı onu tekrar bir araya getiremezsiniz. Şimdi ürün yazılımı hakkında. Genellikle özel kurtarma yoluyla flaşlanan ZIP arşivleri biçiminde dağıtılırlar. Deneyler için ihtiyaç duyacağımız onlardan biri. Bir romodelin yoluna AOSP'ye mümkün olduğunca yakın bir şeyle başlamanızı öneririm özel ürün yazılımı, çünkü anlaşılması genellikle stoktan daha kolaydır.

  1. Arşivi ürün yazılımıyla birlikte herhangi bir klasöre açın.
  2. Komut dosyasını bağlantıdan indirin ve herhangi bir klasöre açın.
  3. Ext dosyasını başlatıyoruz (Java eksikliğinden şikayet ediyorsa, y tuşuna basarak atlayın; Java yalnızca paketleme için gereklidir).
  4. Şimdi 1 düğmesine ve ardından Enter'a basarak paketi açmayı seçin.
  5. Ext dosyasının ve araçlar klasörünün yanında extract_* adlı yeni bir klasör görünecektir. System.new.dat ve system.transfer.list dosyalarını buraya kopyalayın.
  6. Dosyaları kopyaladıktan sonra Enter tuşuna basın ve bekleyin. Bir süre sonra tekrar Enter tuşuna basmanız, yönetici şifresini girmeniz ve tekrar Enter tuşuna basmanız gerekecektir.
  7. Hazır. Sistemin içeriği extract_*/output klasöründedir.

Manuel yöntem

Arşivi ürün yazılımıyla birlikte herhangi bir klasöre (örneğin rom) açın:

$ mkdir ~/rom $ arşiv_yolunun sıkıştırmasını açın -d ~/rom/

İhtiyacımız olan araçları bu klasöre indirin:

$ cd ~/rom $ wget https://github.com/xpirt/sdat2img/raw/master/sdat2img.py

Senaryoyu çalıştıralım:

$ chmod +x sdat2img.py $ ./sdat2img.py system.transfer.list system.new.dat system.img

system.new.dat dosyasını system.img adlı ham görüntüye dönüştürür. Görüntüyü mnt alt klasörüne bağlayın:

$ mkdir mnt $ sudo mount -t ext4 -o döngü sistemi.img ~/rom/mnt

Android Dizin Yapısı

Sistemi paketinden çıkardıktan sonra aşağıdaki dizin yapısı görünecektir:

  • uygulama - önceden yüklenmiş uygulamalar standart ayrıcalıklara sahip;
  • özel uygulama- bazı sistem bileşenleri de dahil olmak üzere yükseltilmiş ayrıcalıklara sahip önceden yüklenmiş uygulamalar;
  • çöp Kutusu- ELF formatındaki ikili dosyalar, Linux'taki /bin ve /usr/bin dizinlerinin bir benzeri. Üst düzey sistem bileşenleri tarafından kullanılan çeşitli sistem bileşenlerini içerir;
  • vesaire- ayarlar dosyaları. Linux'ta /etc'nin tam bir benzeri, ancak yalnızca aynı sistem bileşenleri tarafından kullanılır. Android Uygulamaları mağaza bireysel ayarlar/data/data/ dizinlerinde;
  • yazı tipleri- yazı tipleri. Varsayılan olarak yalnızca Roboto markalı yazı tiplerini içerir;
  • çerçeve- sistem ve uygulamalar tarafından kullanılan Java sınıflarının kütüphaneleri. Ayrıca arayüzün tam açıklamasını içeren bir framework-res.apk dosyası da bulunmaktadır. işletim sistemi tüm grafik dosyaları dahil;
  • kitap Ve lib64- Düşük seviyeli sistem bileşenleri tarafından kullanılan Linux kütüphaneleri. Aşağıdakiler de dahil olmak üzere Linux'taki /lib ve /usr/lib dizinlerinin analogu standart kütüphaneler libc, libz, libssl gibi. ARMv7 mimarisi ve daha düşük sürümlere sahip cihazlarda lib64 dizini eksik olacaktır;
  • medya- medya dosyaları: zil sesleri, bildirim sesleri, arayüz sesleri ve işletim sistemi yükleme animasyonu;
  • tts- konuşma sentezleyicinin ihtiyaç duyduğu dosyalar;
  • usr- genellikle uygulamaları bin dizininden çalıştırmak için gerekli dosyaları içeren bir dizin. Temel olarak /usr/share'in bir benzeri;
  • SATICI- cihaz üreticisi tarafından sağlanan dosyalar. Genellikle çeşitli donanım bileşenleri için ikili ürün yazılımı içerir; örneğin bir Wi-Fi modülü;
  • xbin- isteğe bağlı dizin; özel donanım yazılımları bunu bash yorumlayıcısı, SSH, PowerTOP, BusyBox ve diğer yararlı araçlar gibi şeyleri depolamak için kullanır;
  • build.prop- montaj hakkında bilgilerin yanı sıra çeşitli düşük seviyeli ayarları içeren bir dosya;
  • eklenti.d- ürün yazılımı yüklendikten sonra başlatılan komut dosyalarını içerir. GApp'ler ayrıca bellenimi yeniden yükledikten sonra yeniden canlandırıldıkları için komut dosyalarını da buraya yazar.

Artık Android'in temel yapısına aşina olduğumuza göre değişiklik yapmaya başlayalım.

Uygulamaları kaldırma ve ekleme

Tüm önceden yüklenmiş programlar iki klasörde bulunabilir:

  • /sistem/uygulama/;
  • /system/priv-app/.

Erişim ayrıcalıkları bakımından birbirlerinden farklıdırlar. Uygulamadaki programlar aşağıdakilerle aynı izinlere sahipse üçüncü taraf programları(örneğin, Play Store'dan yüklenmişse), özel uygulamadaki uygulamalar ayrıcalıklı API'leri (ayrıcalıklı haklar) kullanabilir. Bu konuda daha fazla bilgiyi adresinden edinebilirsiniz.

Bir uygulamayı bellenime önceden yüklemek için APK dosyasını /system/app/ dizinine bırakmanız yeterlidir. Elbette ayrı bir klasör oluşturabilirsiniz, ancak bizim durumumuzda bunun bir anlamı yok çünkü klasör, sahip olmadığımız kitaplıkları ve odex dosyalarını depolamak için kullanılıyor. Kaldırmak için, içinde bulunduğu klasörü silmeniz yeterlidir.

Daha da ileri giderek stok uygulamaları analoglarla değiştirebilirsiniz. Örneğin takvimi değiştirmek için klasörü silin Takvim ve favori com.rpagyc.simplecalendar.apk dosyamızı /system/app dizinine kopyalayın. Ve onu kopyalamanıza gerek yok. Daha sonra ürün yazılımı takvimsiz olacaktır.

Unutulmaması gereken en önemli nokta, hisse senedi programlarının birbiriyle ilişkili olabileceğidir. Bu nedenle, bir programın silinmesi, diğerinin tamamen çalışamaz hale gelmesine yol açabilir (örneğin, CalendarProvider ve Calendar: ilkini silerek, yalnızca stok takvimini değil, aynı zamanda diğer herhangi bir takvimi de çalışmaz hale getirirsiniz). Neyse ki, saf AOSP ürün yazılımında çok fazla ara bağlantı yoktur.

Yükleme animasyonunu değiştirme

Animasyon, sıkıştırılmadan /system/media/bootanimation.zip arşivinde paketlenmiş PNG görüntüleri olarak saklanır. Arşivin içinde şunlar var:

  • tanım.txt- animasyonu açıklayan bir dosya;
  • bölüm0- ilk önce oynatılan animasyon dosyalarının bulunduğu bir klasör;
  • Bölüm 1- ikinci olarak oynatılan animasyon dosyalarının bulunduğu bir klasör;
  • parça?- görüntülerin en sonunda oynatıldığı son klasör.

desc.txt dosyası şöyle bir şey içerebilir:

1920 1080 60 p 1 0 bölüm0 p 0 0 bölüm1

Bu çizgilerin amacı sezgiseldir: 1920 × 1080 görüntü çözünürlüğü, 60 ise saniyedeki kare sayısıdır. Part0 ve part1, animasyonun oynatılacağı klasörleri ve oynatma sırasını belirtir. Genel olarak, bir parça veya birkaç (üç veya daha fazla) olabilir.

Parça klasörlerinde bulunan görüntüler oynatma sırasına göre beş sayıyla numaralandırılır: 00000.png, 00001.png, 00002.png... Bu görüntüler kendi görüntünüzle değiştirilebilir, böylece orijinal bir animasyon oluşturulabilir. Veya bootanimation.zip dosyasını silebilirsiniz. Daha sonra cihaz, animasyonu gösterecektir. standart Android. Veya w3bsit3-dns.com adresindeki hazır animasyon koleksiyonunu kullanın.

Ses tasarımını değiştirme

Aslında sistemin çaldığı tüm sesler /system/media/audio klasöründe saklanır. İçinde aşağıdaki klasörleri bulacaksınız:

  • alarmlar- çalar saat melodileri;
  • bildirimler- bildirim sesleri;
  • zil sesleri- zil sesleri;
  • kullanıcı arayüzü- Düşük pil seviyesi, kamera odaklaması, arayüz öğelerinin seçimi gibi sistem sesleri.

Alarmlarda, bildirimlerde, zil seslerinde istediğiniz kadar melodi ekleyebilirsiniz. Bunları örneğin buradan alabilirsiniz:

  • farklı Nokia telefonlarından ve akıllı telefonlardan standart zil sesleri;

Ve küçük bir hayat tüyosu: ui klasöründen dosyaları silmek çökmelere ve hatalara değil, sistem seslerinin kaybolmasına yol açacaktır. Bu nedenle, kameradan fotoğraf çekme, ekran görüntüsü alma sesini, bu sesleri içeren dosyaları silerek (isimleri sezgiseldir) kolayca kapatabilirsiniz.

Yazı tipi ekleme

Yazı tipleri yazı tiplerinde saklanır. Yazı tipi dosyalarını içeren arşivleri w3bsit3-dns.com ve XDA'da bulabilirsiniz. Yüklemek için ttf dosyalarını arşivden fonts klasörüne kopyalayıp değiştirmeniz yeterlidir.

Sistem ayarlarını değiştirme (build.prop)

Sistem görüntüsü, çeşitli hazır uygulamalar için cihaz donanımı ve varsayılan ayarlar hakkında birçok yararlı bilgi içeren ilginç bir build.prop dosyası içerir. Adil olmak gerekirse, bunun her zaman böyle olmadığını belirtmek isterim. Örneğin Gigaset ME ve ME Pro'da build.prop iki bölüme ayrılmıştır. Bir bölümde Gigaset ME için ayarlar bulunur ve ME Pro için bazı satırlar kopyalanır ancak tuşlar (akıllı telefon adı vb.) farklıdır. Bu, aynı ürün yazılımının farklı cihazlarda aşağı yukarı doğru çalışmasını sağlamak için yapıldı.


Build.prop çok sayıda ayar içerir (veya içerebilir). Bazıları hiçbir şeyi değiştirmez, bazıları bir şeyi diğerinin pahasına iyileştirir, ancak gerçekten yararlı olanlar da vardır:

  • ro.ürün.modeli Ve ro.ürün.imalatçısı- akıllı telefon modeli ve üreticinin adı. Bu satırları değiştirerek Play Store'un farklı bir akıllı telefona sahip olduğunuzu düşünmesini sağlayabilirsiniz, bu da daha fazla yazılıma erişimin önünü açacaktır. Az bilinenler için Çin akıllı telefonları bu çizgiler hayat kurtarıcı olabiliyor;
  • hw.qemu.mainkeys- yalnızca iki değer alır: 0 - ekrandaki gezinme tuşlarını gösterir, 1 - düğmeleri göstermez. Çizginin olmaması 0'a karşılık gelir;
  • debug.sf.nobootanimation- değer 1, hızını biraz artıran yükleme animasyonunu devre dışı bırakır. 0'a ayarlamak veya satırı silmek, animasyonu yerine döndürür;
  • ro.telephony.default_network- sisteme hangi moda geçmesi gerektiğini söyler mobil ağ yüklenirken;
  • ro.sf.lcd_density- Ekran DPI'sı, ekran için en doğru değer uygun bir web sitesi aracılığıyla hesaplanabilir. Ancak hiç kimse beğeninize göre daha yüksek veya daha düşük bir değer ayarlamayı yasaklamaz: daha yüksek değerler arayüz elemanlarını büyütür, daha düşük değerler ise arayüz elemanlarını küçültür;
  • ro.config.vc_call_vol_steps- bir çağrı sırasında ses seviyesi adımlarının sayısı (varsayılan 8);
  • ro.config.media_vol_steps- medya ses seviyesi adımlarının sayısı (varsayılan 15).

Donanım yazılımında Google Apps'ı uyguluyoruz

Neredeyse her zaman özel ürün yazılımı olmadan gelir Google hizmetleri ve uygulama mağazası. Geliştiriciler bunları GApps paketini kullanarak ayrı ayrı kurmamızı öneriyor. Ancak doğrudan ürün yazılımına entegre edilebilir.

Öncelikle GApps paketini indirmeniz gerekiyor. Open GApps arşivlerini almanızı öneririm. Sen seç Android sürümü, işlemci mimarisi ve kaç farklı seçeneği belirleyen konfigürasyon seçeneği (Pico, Nano, Stock...) Google uygulamaları bir arşiv içerir. Pico sürümünü indirmenizi tavsiye ederim. Yalnızca Play Store'u ve çalışması için gerekli bir dizi kitaplığı içerir.

GApp'leri ürün yazılımına entegre etmek şu şekilde yapılır:

  1. Herhangi bir arşivleyiciyi kullanarak GApps ZIP arşivini açın.
  2. Çekirdek klasörüne gidin.
  3. .tar.lz uzantılı birçok arşiv görüyoruz. lzip kullanarak çıkartın.
  4. Paketi açtıktan sonra, klasörlerdeki dosyaları sistemdeki ilgili klasörlere kopyalayın. Arşivdeki dizin yapısından neyin nereye atılacağını tahmin etmek kolaydır. Örneğin, configupdater'ın (ekran görüntüsünden) priv-app klasörüne yerleştirilmesi gerekir.
  5. GApps klasörüne gidin (Core'un yanında bulunur) ve içindeki dosyalar için 3. ve 4. adımları izleyin.
  6. İşte bu kadar, GApp'leri ürün yazılımımıza entegre ettik!

Müsait yer

Firmware yükleme alanının sınırlı olduğunu anlamak gerekir. Boyutu cihazın sistem bölümünün boyutunu aşan ürün yazılımını yükleyemezsiniz. Değerini aşağıdakileri kullanarak görüntüleyebilirsiniz:

$ adb kabuk df /sistem

İkinci seçenek: cihaza bir terminal yerleştirin ve komutu yazın

$df/sistem

Akıllı telefonunuza BusyBox'u yükleyerek ve terminalde komutu çalıştırarak bölüm boyutunu bayt cinsinden öğrenebilirsiniz.

$ meşgul kutusu df -B 1 /sistem

Veya aynı şey ADB'yi kullanma:

$ adb kabuk meşgul kutusu df -B 1 /sistem

Ürün yazılımının kapladığı alan, paketten çıkarıldığında sistemin boyutuna yaklaşık olarak eşit olacaktır. Genel olarak, ürün yazılımı oluştururken, kullanıcının ayrıca çeşitli değişiklikleri (SuperSU, Xposed) üzerine flaş edebileceğini veya uygulamaları sistem bölümüne aktarabileceğini dikkate almak gerekir. Örneğin Google'ın minimum uygulama paketi (Pico), minimum 150 MB ek kurulum alanı gerektirir.

Gerekirse, ürün yazılımı dosyasının boyutu yalnızca silinerek azaltılabilir. gereksiz programlar/system/app (/system/priv-app) dosyasından ve system/media/audio ve bootanimation.zip dosyasından çağrı sesleri, ayrıca:

  • /system/tts/lang_pico- ilkel ses motoru Pico TTS'nin dilleri, Google ses motoru etkilenmeyecektir;
  • /system/usr/srec/config/- çevrimdışı diller. Gerekirse daha sonra çevrimiçi olarak indirebilirsiniz.

Toplantı

Değişiklik yaptıktan sonra her şeyi tekrar bir araya getirmeniz gerekir. Öncelikle sistem kısmını system.new.dat içerisine paketleyelim. İhtiyacımız olan araçları indirin:

$ wget https://github.com/xpirt/img2sdat/raw/master/img2sdat.py $ wget https://github.com/xpirt/img2sdat/raw/master/blockimgdiff.py $ wget https://github. com/xpirt/img2sdat/raw/master/common.py $ wget https://github.com/xpirt/img2sdat/raw/master/rangelib.py $ wget https://github.com/xpirt/img2sdat/raw/ master/sparse_img.py $ sudo apt-get android-tools-fsutils'i yükle

Klasörümüzü tekrar RAW görüntüsüne dönüştürelim. Buna system_new.img adını verelim:

$ sudo make_ext4fs -T 0 -S dosya_bağlamları -l 1073741824 -a sistem system_new.img çıktısı/

1073741824, bayt cinsinden sistem bölümünün boyutuna değiştirilir. Hatta biraz daha küçük yapılması tavsiye edilir. RAW görüntüden seyrek bir görüntü oluşturuyoruz:

$ img2simg system_new.img system_snew.img

İmajımızı firmware ile arşive atılması gereken system.transfer.list ve system.new.dat formatına dönüştürelim ancak önce eski dosyaları silelim:

$ rm -rf sistem.aktarım.listesi $ rm -rf sistem.yeni.dat $ rm -rf sistem.patch.dat $ chmod +x img2sdat.py $ ./img2sdat.py system_snew.img

Firmware dosyalarını fazla kabuktan ayıralım (iş için indirdiğimiz dosyalar. Bunun için firmware ile arşivi kullanmak uygundur). Silindi? Artık ürün yazılımını bir ZIP arşivine (herhangi bir arşivleyiciyle) paketlemeniz gerekiyor.

Geriye sadece arşivi imzalamak kalıyor. Bu, hem ZipSigner kullanılarak Android'in kendisinde hem de bir PC'de yapılabilir (Java'nın yüklü olması gerekir):

$ wget https://github.com/appium/sign/raw/master/dist/sign.jar $ java -jar dosyası.zip

Sualtı kayaları

system.new.dat'i oluştururken üretim mekanizmalarının sürekli değişmesinden kaynaklanan çeşitli sorunlarla karşılaşabilirsiniz. Android ürün yazılımı. Yukarıda açıklanan yöntem, Android 5.1 tabanlı ürün yazılımı durumunda iyi çalışmalıdır; daha yenileri zorluklarla karşılaşabilir, bu nedenle derleme araçlarının diğer sürümlerini kullanmanız gerekecektir. Ne yazık ki, montajın tüm nüanslarını açıklayamıyoruz, bu yüzden Google'da aramanız gerekebilir.

Kurulum

Özel ürün yazılımını yüklemek için özel bir ürün yazılımına ihtiyacınız vardır kurtarma TWRP'si, imzasız veya imzalı bir test anahtarı ürün yazılımı ile yüklemenize olanak tanır (bu tam olarak bizim oluşturduğumuz şeydir). Dergide, kurulum sürecini defalarca anlattık ve cihazınıza ayrılmış forum konu başlıklarında genellikle bunu yapmak için yeterli bilgi vardır.

TWRP

sonuçlar

Bu makale, "ürün yazılımı değişikliği" adı verilen devasa bir buzdağının yalnızca görünen kısmını açıklamaktadır. "Ciddi" ürün yazılımı, yalnızca çekirdeği ve ürün yazılımını birçok işleve sahip (genellikle diğer çekirdeklerden ve ürün yazılımından alınan) hazır uygulamalarla tamamlamakla kalmaz, etkileşimlerinin ilkelerini düzenler ve hatta değiştirir, aynı zamanda çalışma ilkelerini de kökten değiştirebilir. işletim sistemi. Doğru, böyle bir hack artık Android değil, Play hizmetleri oraya kurulabilse bile ayrı bir işletim sistemidir (bu arada, en hafif deyimiyle bu tür eylemler Google tarafından teşvik edilmiyor). Unutmayın: üreticilerin tüm kabukları (TouchWiz, ZenUI, HTC Sense vb.) yalnızca sıradan özel kabuklardır ve cihazın donanımına ve birbirlerine maksimum düzeyde bağlıdır.

İnterpolasyon, interpolasyon- hesaplamalı matematikte, mevcut ayrı bir bilinen değerler kümesinden bir miktarın ara değerlerini bulma yöntemi.

Bilimsel ve mühendislik hesaplamalarıyla uğraşanların çoğu, sıklıkla ampirik olarak veya rastgele örnekleme yoluyla elde edilen değer kümeleriyle çalışmak zorunda kalır. Kural olarak, bu kümelere dayanarak, elde edilen diğer değerlerin yüksek doğrulukla düşebileceği bir fonksiyon oluşturmak gerekir. Bu göreve denir yaklaşım. İnterpolasyon, oluşturulan fonksiyonun eğrisinin tam olarak mevcut veri noktalarından geçtiği bir yaklaşım türüdür.

Birçok sonlu fark enterpolasyonu yöntemi vardır. En
Newton'un ileri enterpolasyon yöntemi (Newton-Gregory yöntemi) yaygındır. Bu durumda enterpolasyon polinomu şu şekildedir:

Aşağıdaki formülü kullanarak C katsayılarını buluyoruz:

Programın C# dilinde uygulanması:
Sistemi kullanarak; ad alanı Enterpolasyonu (sınıf Programı…

Program iki parçaya bölünür ve bunlardan birinde sıralama yapılır, diğerinde ise grafik arayüz yeniden çizilir. “Sırala” butonuna tıkladıktan sonra program, sıralama algoritmasının tanımlandığı ve içinde çalışan sıralama işlemiyle yeni bir iş parçacığının oluşturulduğu “RunSorting” yöntemini çağırır.
özel geçersiz RunSo…

Bugün geçen kış tatilinde yaptığım Kacherimi göstermek istiyorum. İnternette çok sayıda makale olduğu için tüm üretim sürecini anlatmayacağım. Sadece ana parametreleri hakkında yazacağım.

Aşağıda cihazın montajı sırasında çekilen birkaç fotoğraf bulunmaktadır.

Bobin, 50 mm çapında ve 200 mm yüksekliğinde bir PVC boru üzerine yaklaşık 2000 tur 0,08 mm tel ile sarılır.

Terminal olarak eski bir sabit diskten bir plaka kullanıldı. Geriye kalan her şey sayfanın en altında bulunan şemaya göre toplandı.

İlk seçenek, 12 V voltajlı eski bir bilgisayarın güç kaynağından beslendi. Daha sonra 30 V voltajlı ve dahili soğutmalı ayrı bir güç kaynağı yapıldı.

Cihaz şeması:

Etki alanları arası kaynak paylaşımı (CORS), tarayıcıda etki alanları arası iletişime izin veren bir W3C spesifikasyonudur. CORS, XMLHttpRequest nesnesinin üzerine inşa ederek geliştiricilerin aynı etki alanındaki isteklerle aynı deyimlerle çalışmasına olanak tanır. CORS'un kullanım durumu basittir. Alice.com'un bob.com'un elde etmek istediği bazı verilere sahip olduğunu düşünün. Aynı tarayıcı menşei politikası kapsamında bu tür isteğe geleneksel olarak izin verilmez. Ancak alice.com, CORS isteklerini destekleyerek bob.com'un verilere erişmesine olanak tanıyan bazı özel yanıt başlıkları ekleyebilir. Bu örnekten de görebileceğiniz gibi CORS desteği, sunucu ve istemci arasında koordinasyon gerektirir. Şans eseri, eğer istemci tarafında bir geliştiriciyseniz bu ayrıntıların çoğundan korunursunuz. Bu makalenin geri kalanında istemcilerin çapraz kaynak isteklerini nasıl gerçekleştirebilecekleri ve sunucuların kendilerini CORS'u destekleyecek şekilde nasıl yapılandırabilecekleri gösterilmektedir. Devam etti…




Tepe