gömülü sistemler 1

of 42 /42
T.C. MĠLLÎ EĞĠTĠM BAKANLIĞI ENDÜSTRĠYEL OTOMASYON TEKNOLOJĠLERĠ GÖMÜLÜ SĠSTEMLER - 1 523EO0374 Ankara, 2011

Author: rasul-yilmaz

Post on 15-Jul-2016

16 views

Category:

Documents


1 download

Embed Size (px)

DESCRIPTION

Gömülü Sistemler

TRANSCRIPT

  • T.C.

    MLL ETM BAKANLII

    ENDSTRYEL OTOMASYON TEKNOLOJLER

    GML SSTEMLER - 1 523EO0374

    Ankara, 2011

  • Bu modl, mesleki ve teknik eitim okul/kurumlarnda uygulanan ereve retim Programlarnda yer alan yeterlikleri kazandrmaya ynelik olarak rencilere rehberlik etmek amacyla hazrlanm bireysel renme materyalidir.

    Mill Eitim Bakanlnca cretsiz olarak verilmitir.

    PARA LE SATILMAZ.

  • i

    AIKLAMALAR .................................................................................................................... ii GR ....................................................................................................................................... 1 RENME FAALYET1 .................................................................................................... 3 1. GML SSTEM ............................................................................................................. 3

    1.1. Gml Sistemin Tanm .............................................................................................. 3 1.1.1. Gml Sistem ...................................................................................................... 3 1.1.2. Linux ...................................................................................................................... 3

    1.1.3. Linux Ortamnn Avantajlar ................................................................................. 5 1.1.4. Dier Gml Sistemler ........................................................................................ 6

    1.2. Gml Sistem Gelitirme Ortamlar ........................................................................... 7 1.2.1. sel ve apraz Derleyiciler ................................................................................... 7 1.2.2. apraz Derleyiciler ................................................................................................ 8 1.2.3. Windows Ortamnda Linux Kullanm .................................................................. 8 1.2.4. Linux Emulatrnn (CYGWIN) Kurulumu ........................................................ 8 1.2.5. Editr Program (VI)............................................................................................ 14 1.2.6. Terminal Program ............................................................................................... 15 1.2.7. FTP Sunucu Ayarlar ........................................................................................... 17

    UYGULAMA FAALYET .............................................................................................. 22 LME VE DEERLENDRME .................................................................................... 23

    RENME FAALYET2 .................................................................................................. 24 2. Gml Sistem in Programlama ..................................................................................... 24

    2.1. Cygwin Komutlar (Linux ve Unix in) .................................................................... 24 2.1.1. Dosya ve Dizin Komutlar ................................................................................... 24 2.1.2. Listeleme Komutlar ............................................................................................ 25

    2.2. apraz Derleyici Kurulumu ........................................................................................ 31 2.2.1. Gcc (sel Derleyici) ve Mipsel-Linux-Gcc (apraz Derleyici) .......................... 31 2.2.2. Mipsel-Linux-Gcc ile apraz Derleme ............................................................... 33

    UYGULAMA FAALYET .............................................................................................. 34 LME VE DEERLENDRME .................................................................................... 35

    MODL DEERLENDRME .............................................................................................. 36 CEVAP ANAHTARLARI ..................................................................................................... 37

    KAYNAKA ......................................................................................................................... 38

    NDEKLER

  • ii

    AIKLAMALAR KOD 523EO0374

    ALAN Endstriyel Otomasyon Teknolojileri

    DAL/MESLEK Alan Ortak Modl

    MODLN ADI Gml Sistemler - 1

    MODLN TANIMI

    Gml sistemler hakknda temel bilgilerin verildii bir renme materyalidir.

    SRE 40/32

    N KOUL

    YETERLK Gml iletim sistemini kullanmak

    MODLN AMACI

    Genel Ama Gml sistem kartn teknik zelliklerine ve programlama tekniklerine uygun olarak kullanabileceksiniz.

    Amalar 1. Gml sistem gelitirme ortamn kurallarna uygun olarak kuracak ve kullanabileceksiniz.

    2. apraz derleyici kurulumunu ve kullanmn kurallarna uygun olarak yapabileceksiniz.

    ETM RETM ORTAMLARI VE

    DONANIMLARI

    Ortam: Elektronik laboratuar

    Donanm: Bilgisayar, gml sistem deney setleri

    LME VE DEERLENDRME

    Modl iinde yer alan her renme faaliyetinden sonra verilen lme aralar ile kendinizi deerlendireceksiniz.

    retmen modl sonunda lme arac (oktan semeli test, doru-yanl testi, boluk doldurma, eletirme vb.) kullanarak modl uygulamalar ile kazandnz bilgi ve becerileri lerek sizi deerlendirecektir.

    AIKLAMALAR

  • 1

    GR

    Sevgili renci,

    Gml sistemler, donanmsal ve yazlmsal birok teknolojinin bir arada kullanlmasyla oluturulur.

    Araba elektronii ve ev elektronii, gml rnlere rnek olarak gsterilebilir. Gml sistem tasarm yapmak, geni apl bir bilgi birikimi ister. Bunun iin elektronik devre bilgisi, mantk devreleri bilgisi, mikroilemci, donanm mimarisi, programlama ve sistem gelitirme sreleri hakknda bilgi sahibi olmak gerekir.

    Bu modlde, gml sistem iin ihtiya duyulan donanmsal ve yazlmsal bilgi ve gereksinimler hakknda bilgi verilecektir.

    GR

  • 2

  • 3

    RENME FAALYET1

    Gml sistemlerin genel yaps hakknda bilgi sahibi olacaksnz.

    Gnlk hayatta kullandnz akll ev aletlerinin almasn gzlemleyerek bu aletlerin hangi durumlarda ne tr cevaplar verdiini not ediniz. Bu fonksiyonlara ilave olarak Neler eklenirse daha verimli olabilir? sorusuna cevap araynz.

    1. GML SSTEM

    Gnmzde ok yaygn olarak kullanlan gml sistemleri inceleyelim.

    1.1. Gml Sistemin Tanm

    Gml sistemi tanmlamak iin kullanlabilecek en temel ifade, CPU (merkez ilem birimi) sistemine sahip donatm ya da tehizat olabilir.

    Somut olarak nakit gielerindeki cihazlar (POS), cep telefonlar, amar makineleri, gelimi diki makineleri, taksimetreler ve bunlara benzer tm cihazlar birer gml sistem rndr.

    1.1.1. Gml Sistem

    Tketicilerin geneli, gelimi fonksiyonlu cep telefonlarnda 32 bit RISC (Reduced Instruction Set Computing) CPU kullanldndan ve ilerinde gml sistem teknolojisi olduundan habersizdir.

    Gml sistemler, zel bir teknik yokken uzay almalar, asker donanm, haberleme gibi alanlarda ska kullanlyordu. Bugn birok dijital aygtta gml sistemler kullanlmaktadr.

    Firmalar, rnlerinin daha kullanl ve daha ilevsel olmas iin gml sistemler tercih etmektedir. Cep telefonlarnda, video oyunu makinelerinde, dijital uydu alclarnda sklkla kullanlr.

    1.1.2. Linux

    Linux kullanc says giderek artan gml sisteminden biridir. Linuxun ardndan tron ve VxWorks iletim sistemleri gelir.

    Gml Linux, Linux kernelinin Linux datmclar tarafndan (kernel- iletim sistemi ekirdei) zel ilevler iin deitirilmi hlidir.

    RENME FAALYET1

    AMA

    ARATIRMA

  • 4

    VxWorks (WindRiver irketi (http://www.windriver.co.jp/)), tarafndan eitli dijital rnler iin rettii gml iletim sistemleri vardr. VxWorksun, kontrol sisteminde grebileceiniz e zamanl (realtime) OSleri bulunur.

    ITRON ise e zamanl iletim sistemi rn deildir. Fakat standart zellikleri belirler. ITRON iletim sistemi kurallarnn piyasa rnlerini grmek mmkndr. Makine kontrol sistemleri, arabalarda yakt kontrol ve enjeksiyon sisteminde kullanlr. Yn bulma sistemlerindeki e zamanl iletim sistemleri, ok daha karmak ve zordur.

    Tablo 1.1de kullanlan eitli iletim sistemleri grlmektedir. letim sistemi seerken ek olarak karlatrlacak birok madde vardr. Bunlardan bazlar aada sralanmtr.

    Derlendikten sonra ROMda kaplad alan ne kadardr? Grevler dinamik olarak ykleniyor mu? Sanal depolamay destekliyor mu (virtual storage)? MMU (memory management unit) (bellek ynetim nitesi) gerektiriyor mu? Telif hakk creti gerektiriyor mu?

    letim sistemi Kullanc says Program says Ak kod

    ITRON Program Grev Evet

    VRTX Program Grev Hayr

    PSOS Program Grev Hayr

    VxWorks Program Grev Hayr

    Nucleus Program Grev Evet

    OS 9 ok kullancl Sre Hayr

    HardHatLinux ok kullancl Sre Evet

    Embedix ok kullancl Sre Evet

    Windows CE Tek kullancl Sre Hayr

    Unix ok kullancl Sre Evet

    Linux ok kullancl Sre Evet

    Windows NT, XP ok kullancl Sre Hayr

    Windows9X Tek kullancl Sre Hayr

    Tablo 1.1: Kullanlan eitli iletim sistemleri

  • 5

    Bellek fiyatlarnn dmesi mega byte snf ilemcilerin de fiyatlarnn dmesini salad. Yksek seviye iletim sistemleri kullanldnda donanm performansnn da yksek olmas gerekir. Windows iletim sistemi, program ve iletim sistemi derlemek iin kullanlabir. Fakat ak kod olmad iin gml sistemlerde kullanlmas pek de kolay deildir. Windows embedded srm kmtr fakat Linuxa gre ok daha fazla alan kaplamaktadr.

    Kullancya istedii zaman iletim sistemi kodlarnn iinde deiiklik yapabilme imkn salad iin gml iletim sistemi yapmak ve derlemek Linuxta daha kolaydr. Bundan dolay gml sistem iin Linux kullanlr.

    1.1.3. Linux Ortamnn Avantajlar

    Lisans: Birok ara yazlm ve uygulama ak kod lisans kullanr. Yasalara gre kernelin lisans szlemesini iermesine gerek yoktur.

    Aygt srcs: Daha nceden yaplm ve halka ak birok aygt srcs bulunmaktadr. Yeni aygt srcs yapmak mmkndr.

    A balants zellii: nternet iin ara yazlmlar gitgide oalmaktadr. Linux, hli hazrda birok sunucu ilevini ve protokol yn ilevini gerekletirir.

    Real-time zellii: Real-time zellii kernel 2,4te desteklenmemektedir. Bu srm ok grevli (multi-task) ve ok kullancl (multiuser) iletim sistemidir. Ama real-time ilevi olan kernel eitleri de vardr (HeadHat Linux). Linux 2.5.4ten sonraki srmler real-time zelliini desteklemektedir.

    lev eklenebilirlilik ve hareket kabiliyeti: levselliini ve zelliklerini ana bellein snrlar belirler.

    CPU mimarisi: Linux ak kaynak kodlu olduu iin deiik CPU mimarilerine tanmas, aktarlmas mmkn olabilmektedir.

    Linux iletim sistemlerinde sadece bir CPUya zg yap oluturmak mmkndr. Ak kaynak kodunun bir zellii de iletim sisteminin tanabilir zelliklerinin olmasdr. Bylelikle Linux, telif hakknn gereksiz olduu, a zerinde alma yeteneinin ok yksek olduu herkese ak bir cazibe merkezi ekline dnmektedir ve Linuxun bu cazibesi gn getike artmaktadr.

    Gelecekte Java ve Linux, ITRON ve VxWorksun yerini alabilir mi? sorusunun cevab Hayr. olacaktr. Gml sistemlerde sistemde kullanlacak hafzann maliyeti, kullanlacak CPU, gerek zamanl alma, haric arayzler gibi hususlara ncelik verilmekte daha basit bir ifadeyle ok eitli istekler ortaya kmaktadr.

    Gml sistem ihtiyalarndan doan iletim sistemi seimi problemi Linux ya da Java platformunun seim nedenlerinden biri olabilir. unu unutmamak gerekir ki ITRON ve VxWorks sahip olduklar kendilerine has iletim sistemini gelecekte de korumaya devam edecektir.

  • 6

    1.1.4. Dier Gml Sistemler

    ki tr gerek zamanl gml sistem vardr. Bunlar; donanmsal gerek zamanllk ve yazlmsal gerek zamanllktr. Kontrol alannda yerlemi bir kuram vardr: nsanlar bilgisayardan bir cevap beklerken bu sre en fazla 3 saniye olabilmektedir.

    Dier yandan birka milisaniyede (ms) karar verilebilen ilemler olduu gibi yzlerce mikrosaniye (s)de tamamlanmas gereken ilemler de olabilir.

    Donanmsal gerek zaman, ilemin karar verilen srede tamamlanmas, Yazlmsal gerek zaman, ilemin insann tahamml snrlar erevesinde en

    ksa zamanda tamamlanmasdr.

  • 7

    Donanmsal Gerek Zaman Uygulamalar Yazlmsal Gerek Zaman Uygulamalar

    PBX

    Rout

    er

    letim Aygtlar

    ATM Anahtarlar

    Uak Otomatik Pilot Sistemleri

    Uzay Uydular Roket Kontrolleri

    Saysal Kontrol Sistemli Makineler

    retim Tabanl Robotlar(CNC vb.)

    Araba Motor Kontrol Sistemleri

    Araba ABS Sistemleri

    Araba Dolam(Navigation) Sistemleri

    Yol Sinyalizasyon Sistemleri

    Asansrler

    Salk Ekipmanlar

    Elence Cihazlar

    Cep Telefonlar

    PDA Yazc

    Fotokopi

    Fax

    Mikrodalga Frn

    Klimalar

    Bilet Makineleri

    Tanabilir Oyun Konsollar

    Restaurant Sipari Terminalleri

    POS

    Gvenlik Sistemleri

    Ev Robotlar

    Electronic Mzikal Enstrmanlar

    Tablo 1.2: Gml sistem uygulama alanlar

    1.2. Gml Sistem Gelitirme Ortamlar

    Yazlm gelitirme ortamlar (development environments) basit olarak "isel derleyiciler" ve "apraz derleyiciler" eklinde ikiye ayrlabilir. Birok bilgisayarda Windows iletim sistemi kullanlmasna karn Linux iletim sistemi yazlm gelitirme daha yaygndr. Bununla ilgili kavramlar ve ilikileri aada srayla anlatlmtr.

    Gml sistem tasarmnda kullanlabilecek en doru iletim sistemi Linuxtur.

    1.2.1. sel ve apraz Derleyiciler

    Gelitirme ortam host ve uygulama ortam hedef ayndr. Yani isel derleyiciler ile kiisel bilgisayarlar iin gerekli olan programlar derlenir, daha sonra yine kiisel bilgisayarlar zerinde yrtlr ya da altrlr. Bir baka adan programlar, Windows ortamnda hazrlanrsa yine Windows ortamnda altrlr, Linux ortamnda hazrlanrsa Linux ortamnda altrlr. Derleme ortam ile yrtme ortam ayn olduu zaman programlarn annda altrlp sonularnn alnmas mmkn olabilmektedir.

  • 8

    1.2.2. apraz Derleyiciler

    Gelitirme ortam "Host" ve uygulama ortam "Hedef" farkldr. apraz derleyicilerin gelitirme srecinde ortaya kabilecek snrlamalara karn etkinlii artrmada pek ok avantajlar mevcuttur.

    Yazlan program host tarafnda yani gelitirme ortamnda derlenir, hata ayklamas yaplr, hedefe yollanr ve altrlr. Cevaplar eer istenmi ise host tarafna geri dner ve tekrar hata kontrol yaplp ilenir.

    Eer kk gml sistemlerden bahsediyorsak gelitirme ortam srekli apraz derleyiciler kullanlarak hazrlanacaktr.

    1.2.3. Windows Ortamnda Linux Kullanm

    apraz derleyiciler kullanlrken hedef ve kaynak derleyicilerin farkl olmas nedeniyle karlalan pek ok gl aabilmek iin her ikisinde de Linux iletim sisteminin kullanlmas uygun grlmtr.

    Son zamanlarda oluan sistem yazlmlarn ya da program gelitirmede Linux ortamnn kullanlmas abas, yeni bir ihtiyac da beraberinde getirmi ve Linux iletim sistemini kurup Windowsu kaldrmay zorunlu klan durumlarn nne gemek iin Windows iletim sistemi altnda Linux iletim sistemi imknlarn kullanclara sunan Linux Emulatr Programlar gelitirilmeye balanmtr. Bunlara ek olarak gerekli olan gelitirme elemanlar liste hlinde verilmitir.

    Linux Emlatr

    Editr (Program yazabilmek iin)

    Terminal Yazlm ve Ayarlar

    FTP Server Yazlm ve Ayarlar

    C Derleyicisi ve Ayarlar

    Gml Sistem Ayarlar

    Gml Sisteme Programlarn Gnderimi ve altrma

    Tablo 1.3: Gelitirme Elemanlar

    1.2.4. Linux Emulatrnn (CYGWIN) Kurulumu

    Windows zerinde Linux varm gibi alma olana salayan ayrca GNU gelitirme aralarn da iinde barndran bir programdr.

    UNIXin APIlerinin Windows APIleri ile ii bittikten sonra ktphaneye aktarr ve ktphaneye (Cygwin DLL) uygun olarak GNU (GCC ve binutils) gelitirme aralarn kullanr.

  • 9

    Kuruluma balama

    CD-ROM iindeki Cygwin dizinindeki setup.exeyi altrnz.

    Resim 1.1: Cygwin setup ekran

    Program kurulumu

    Resim 1.2: Kuruluma balama

    Program ykleme kayna seimi

    Install from internet

    Down from internet

    Install from local Directory (CDROM iinde daha nceden kopyalanan yerde)

  • 10

    Resim 1.3: Ykleme kayna seimi

    Root klasrnn yerinin belirtilmesi

    Root Directory

    C:\cygwin --- Install for (All Users) --- Default Text File Type (Unix)

    All (bilgisayardaki tm kullanclar) veya Just Me (sadece ak olan kullanc iin ykle). All Users seenei iaretlenir.

    Unix (LF) veya DOS (CR+LF) seeneklerinden Unix seenei iaretlenir.

    Resim 1.4: Root klasr seimi

  • 11

    Ykleme paketlerinin yerinin belirtilmesi

    (CD-ROM srcs) :\Cygwin

    Cd-rom srcs F olduu iin F:\Cygwin seilir.

    Resim 1.5: Ykleme yerinin belirlenmesi

    Yklenecek paketlerin seilmesi

    +Alla tkladnda solunda install yazar ve tm paketler yklenmek zere seilir ve ykleme ilemine gemek iin next butonu tklanr.

    Resim 1.6: Ykleme paketlerinin seimi

  • 12

    Dosyalarn bilgisayara yklenmesi

    Resim 1.7: Dosya ykleme

    Simgelerin oluturulmas

    Masastnde simge olumas iin Create icon on Desktop seenei iaretlenir.

    Resim 1.8: Simge oluturma

  • 13

    Ykleme ileminin sonu

    Resim 1.9: lemin sona ermesi

    Batch dosyasnn dzenlenmesi (notpad.exe kullanarak)

    Bir sonraki ilem olarak c:\Cygwin\Cygwin.bat dosyas dzenlemek iin alr.

    Sistem arma deime ayar

    Set MAKE_MODE=UNIX Windows iletim sistemi ayarlar Windows NT/2000/XP iin set CYGWN=binmode ntsec nontea Windows9x/Me iin set CYGWN=binmode nontsec nontea

    Eer bilgisayar yneticisi deilseniz ve gvenlie ihtiyacnz yoksa 2. seenekteki ayar yapabilirsiniz.

    CYGWIN al ve kapan

    Masastndeki simgeden alr.

    BASH ekran aadaki gibidir.

    (Bash: Bourne Again Shell Bourne UNIX in standart kabuudur. )

    @echo off

    set MAKE_MODE=UNIX Bu satr eklendi set CYGWIN=binmode ntsec nontea Bu satr eklendi c:

    chdir c:\Cygwin\bin

    bash --login i

  • 14

    Resim 1.10: Bash ekran

    Administrator : Giri yapan kullanc ad JICA-3BAC1EFB9E : Bilgisayar ismi

    ~ : Kullancnn ev (home) klasr $ : Komut promptudur. $dan sonra giri yaplabilir.

    Administrator @ JICA-3BAC1EFB9E ~

    exit (Eer exit yazarsanz k yapabilirsiniz.)

    1.2.5. Editr Program (VI)

    Cygwin, gml sisteme nceden yklenmitir. Bu blmde Cygwin iindeki Vi dzenleyicisinin nasl kullanld anlatlacaktr.

    Balang ve biti

    Balang $ vi (dosya ad) Biti $ (shift)+zz

    Vi dzenleyicisinin modlar

    Vi dzenleyicisinin modu vardr. Bu mod Command mode (komut modu), Text input mode (yaz giri modu) ve Execute mode (altrma modu)dur.

    Vi editoru aldnda komut modunda alr. Eer bir giri yapmak isteniyorsa Text input mode i(ekle) ile gemek gerekir veya a (bir sonraki satra ekle ) ya da o (zerine yaz) seeneklerinden biri kullanlabilir. Ayrca ESC tuu ile komut moduna klabilir.

    alma moduna (shift + ;) ile geilebilir. alma modlar arasndaki iliki aadaki gibidir.

  • 15

    ekil 1.1: Vi alma modlar

    1.2.6. Terminal Program

    Bilgisayar, gml sistem zerindeki konsolu kullanmaktadr. Aadaki ekilde de grlecei gibi bilgisayar ve gml sistem apraz RS232C kabloyla baldr. Terminal program olarak Windowstaki Hyper Terminal program kullanlacak, seri port ayarlar aklanacaktr.

    Start Programs Accessories- Communications- Hyper terminal yolu izlenerek terminal program balatlr.

    ekil 1.2: Gml sistem-PC balant protokol

  • 16

    Balant ismi ayar

    Resim 1.11: Balant ismi belirleme

    Seri port ayarlar

    Resim 1.12: Seri port seimi

    Seri port zellikleri ayarlar

    Resim 1.13: Seri port ayarlar

  • 17

    Terminal penceresi

    Resim 1.14: Terminal penceresi

    Balanty kesme ve ayarlar kaydetme

    Resim 1.15: Balanty kesme ve ayarlar kaydetme

    1.2.7. FTP Sunucu Ayarlar

    Bilgisayardan L-Carda dosya transfer etmenin 2 yolu vardr:

    Rs232c ile Tcp/Ip zerinden ftp ile

    Rs232c, gml sistem konsolu iin ayrldndan dosya transferi iin srekli ayar deitirilmesi gerekir. Bu olay, dosya transferinde sorun yaratabileceinden dosya transferi iin rs232c kullanlmaz. Gml sistemin zerinde Ethernet arabirimi olduundan dosya transferi iin ftp kullanlr. Gml sistem zerindeki Unix ftp sunucusu almadndan ftp server bilgisayar tarafnda alr ve gml sistem bu ftp sunucuya istemci olarak balanr.

    Windows iin ftp sunucu kurulumu aadaki gibidir.

    Masastne yeni bir dizin ap dizin adn ward165 yapnz.

  • 18

    Resim 1.16: Ward165 adnda dizin almas

    Ward165.exe dosyasn atnz dizine kopyalaynz.

    Resim 1.17: Dosyann dizine kopyalanmas

    Ward165.exeyi altrnz.

    Resim 1.18: Ward165 dosyasnn dizine almas

  • 19

    Masastne ksayol oluturunuz.

    Resim 1.19: Ksayol oluturma

    Programn ayarlar: Add tklaynz.

    Resim 1.20: FTP kullanc ekleme

    Kullanc ad: Usr

    Resim 1.21: FTP kullanc ad belirleme

  • 20

    ifre: Pass

    Resim 1.22: FTP kullanc ifresi belirleme

    User kullancnn izinleri deitirilir.

    Resim 1.23: FTP kullanc izinlerine eriim

    Dosya eriim ayarlar, paylama alacak dizinler ve FTP izinleri

    Resim 1.24: FTP kullanc izinlerini ayarlama

  • 21

    Al ayarlar:

    Resim 1.25: FTP balang ayarlar

    Otomatik al ayarlar:

    Resim 1.26: FTP otomatik al ayarlar

  • 22

    UYGULAMA FAALYET

    Gml sistem gelitirme ortamn kurallara uygun olarak kurunuz.

    lem Basamakalr neriler

    Cygwin kurulumunu gerekletiriniz? Cygwin programn internetten cretsiz

    olarak indirebilirsiniz.

    Hyperterminal kurulumunu gerekletiriniz?

    Windows altndaki hyper terminali kullannz.

    FTP kurulumunu gerekletiriniz? renme faaliyetindeki programn

    ayns kullanabilirsiniz.

    UYGULAMA FAALYET

  • 23

    LME VE DEERLENDRME

    Aadaki sorular cevaplaynz.

    1. sel derleyiciler ne demektir?

    2. apraz derleyiciler ne demektir?

    3. FTPde kullanc ayarlar nelerdir? zah ediniz?

    4. Rs232 ile TCP-IP balant nerelerde kullanlr?

    DEERLENDRME

    Cevaplarnz cevap anahtaryla karlatrnz. Yanl cevap verdiiniz ya da cevap verirken tereddt ettiiniz sorularla ilgili konular faaliyete geri dnerek tekrarlaynz. Cevaplarnzn tm doru ise bir sonraki renme faaliyetine geiniz.

    LME VE DEERLENDRME

  • 24

    nemli:

    cd / Root dizinine git.

    cd ~ veya cd Home dizinine git.

    mkdir (dizin-isim)

    RENME FAALYET2

    Gml sistem iin programlama becerisi kazanacaksnz.

    C programlama rnekleri bulunuz ve algoritma hakknda bilgi sahibi olunuz.

    2. GML SSTEM N PROGRAMLAMA

    Gml sistmein programlamas ile ilgili ayrntlar aada anlatlmtr.

    2.1. Cygwin Komutlar (Linux ve Unix in)

    Cygwin (Unix)in ok fazla komutu vardr. Bu blmde temel komutlarn nasl kullanld aklanacaktr.

    2.1.1. Dosya ve Dizin Komutlar

    Pwd (print working directory) yazld andaki dizin bilgisini gsterir.

    cd (dizin-path) Dizini deitir.

    Dizin olutur.

    rmdir (dizin-isim),rm -r (dizin-isim) Dizin sil.

    -r : Alt dizinleri ve dosyalar sil.

    cp (kaynak dosya) (hedef dizin) Dosya kopyala.

    mv (kaynak dosya) (hedef dizin) Dosya ta.

    rm (dosya ismi) Dosya sil.

    chmode (kullanc) [+/-] (zellik) Kullanc izinlerinin deitirilmesi

    AMA

    ARATIRMA

    RENME FAALYET2

  • 25

    Seenek zellik Seenek zellik

    -l Detaylar gsterir. -L Sembolik balar

    grntler.

    -a Ariv niteliklerini

    grntler.

    -1 Dizinleri ya da dosyalar

    tek satrda grntler.

    Tablo 2.1: Linux kullanc zellikleri

    2.1.2. Listeleme Komutlar

    ls (seenek)

    ls komutu, verilen seenee gre dosyalar listeler. Eer dosyalar hakknda bilgiye ihtiya yoksa onlarn grntlenmesi engellenebilir. Kullanlabilecek seenekler Tablo 2.2deki gibidir.

    al eklinde birden fazla seenei ayn anda kullanmak mmkndr.

    Tablo 2.2: Kullanlabilecek komutlar

    Cat

    Cat komutu, dosya ieriini grntler. Dosyann ierii grlmek istenmediinde rnein hello.c aadaki gibi yazlr.

    cat hello.c

    Bunun yan sra iki dosyay birletirip tek dosya hline getirmek amacyla da kullanlabilir.

    cat ilk.txt ikinci.txt > nc.txt

  • 26

    more

    More komutu, dosya ieriini 1 sayfa ara vererek grntler.

    Less

    LESS komutu more komutuna benzer. Ama b tuuna basarak ters ynde ilerlemek ve iinde arama yapmak mmkndr (less / aranacak kelime).

    Redirect ve pipe

    Redirect ve pipe komut deildir ama kabuun (shell) bir zelliidir. Bu komutlarla komuta zellik eklemek mmkndr. Bu komutlar aadakileri ierir.

    Nereden Anlam

    Redirect < filename Dosya adndan oku.

    > filename Dosya ismi zerine yaz.

    >> filename Dosya ismi zerine ekleyip yaz.

    Pipe | Birletirilecek komut soluna yazlr.| Giri ise sana yaplr.

    ls l | more Dosya sayfa sayfa grntlenir. cat > test.txt Dosya ismi text.txt olan dosya olutur.

    pwd

    allan dizini gsterir.

    Administrator @ JICA-3BAC1EFB9E ~ $ pwd

    /home/ Administrator

    cd

    allan dizinden root dizinine gei yaplr ve dosyalar listelenir.

    Administrator @ JICA-3BAC1EFB9E ~

    $ cd /

    Administrator @ JICA-3BAC1EFB9E /

    $ ls

    bin cygwin.bat cygwin.ico etc home lib sbin tmp usr

    Cygwin dizinindeki dosya ve dizinleri kontrol ediniz. Windows iletim sisteminde root dizini c:\a karlk gelir. Cygwinde ise c:\Cygwin root dizinidir. Ayrca

  • 27

    c:\Cygwin\home\Administrator (veya kullanc ad) dizini cywindeki home dizinidir. Cygwin dizin dzeni aada gsterildii gibidir.

    Resim 2.1: Cygwin dizini

    Windows iletim sisteminde:

    Resim 2.2: Cygwin dizin ierii

    Cygwinde dizinlerin aa grnm ile gsterilmesi:

    Cygwin deki -- iareti, / iareti anlamndadr. Home dizini (~) veya

    /home/Administrator ayn eydir.

  • 28

    Mkdir

    Data test1~test4 dizinlerinin home dizininde oluturulmas:

    cp

    Hello.txt dosyasnn text1 dizininden text2 dizinine kopyalanmas:

    mv

    Hello. txt dosyasnn text2 dizinine text3 dizinine tanmas:

    Administrator @ JICA-3BAC1EFB9E ~/test2

    $ mv hello. txt ~/test3

    Administrator @ JICA-3BAC1EFB9E ~/test2

    $ ls

    Administrator @ JICA-3BAC1EFB9E ~/test2

    $ cd ~/test3

  • 29

    Administrator @ JICA-3BAC1EFB9E ~/test3

    $ ls

    hello. txt

    rm

    Hello. txt dosyasnn test3 dizininden silinmesi: Administrator @ JICA-3BAC1EFB9E ~/test3

    $ rm hello. txt

    rmdir

    text2~4 dizinlerinin silinmesi:

    Administrator @ JICA-3BAC1EFB9E ~/test2

    $ cd ~

    Administrator @ JICA-3BAC1EFB9E ~

    $ rmdir test2 test3 test4

    chmod

    Hello.txt dosyasnn eriim haklarnn deitirilmesi: Administrator @ JICA-3BAC1EFB9E ~

    $ cd test1

    Administrator @ JICA-3BAC1EFB9E ~/test1

  • 30

    Tm kullanclarn eriim hakk sadece okunabilir yaplyor. Administrator @ JICA-3BAC1EFB9E ~/test1

    $ chmod a-w hello. txt

    Rootun kabul ettii dier srclere erimek (cd-rom gibi)

    c:\(windows root) gibi bir dizine ya da baka bir dizine erimek istendiinde aada gsterildii gibi yazlr.

    / cygdrive / (src ad)

    tar (tape sktrc)

    tar birok dosyay tek bir dosyada saklayp arivlemeyi salar. Gzip ise dosyalar sktrr. Genellikle tar ve gzip birlikte kullanlr.

    Aada baz tar seeneklerini grebilirsiniz. tar -(seenek) (dosya ad)

    Seenek Anlam

    c Yeni ariv dosyas olutur.

    x Arivi a.

    z Arivi aarken gzipi kullan.

    j Arivi aarken gzip2yi kullan.

    v allan dosyalar gster.

    f zel dosya (Tape gerektirir.)

  • 31

    2.2. apraz Derleyici Kurulumu

    apraz derleyici, Cygwin-cross-Mipsel-Linux.tar.bz2 isimli dosyadr. Arivi ama ilemi aadaki gibidir.

    $tar xvjf /cygdrive/d/special/Mipsel-Linux-Gcc/Cygwin-cross-Mipsel-Linux.tar.bz2

    2.2.1. Gcc (sel Derleyici) ve Mipsel-Linux-Gcc (apraz Derleyici)

    Aadaki kodu yaznz ve data dizinine hello.c ismi ile kaydediniz. sel (tekil) derleyici iin Gcc kullanlr. apraz derleyici olarak bu sistem iin

    Mipsel-Linux-Gcc kullanlr (kullanlan MCU dan dolay).

    hello-self ve hello-cross olarak iki derleyici ile derleyiniz. #include

    int main()

    {

    printf(Hello C World/n); return 0;

    }

  • 32

    Derleme komutu

    Format: Gcc (seenek1) (seenek2) alacak-dosya ad kaynak-dosya ad

    Seenekler hakknda

    Seenek1 : Bu seenek temel uyumluluk iin yaplr. rnein;-O kodu kaplad alan drr ve abuk almasn salar.

    Seenek2 : -o Bu seenek derlenecek kaynak dosyann ismi ile kta oluacak altrlabilir dosyann isminin farkl olmasn salar.

    Derleme

    Cygwindeki dosya komutu

    Bu komut dosyann ne olduu hakknda, hangi CPU iin olduu konusunda bilgi verir. Format file (dosya ad)

    altrma ./ Anlam, allan klasr.

  • 33

    2.2.2. Mipsel-Linux-Gcc ile apraz Derleme

    Derleyici komutlar

    Format

    Mipsel-Linux-Gcc (seenek1) (seenek2) (seenek3) exe-dosya ad kaynak-dosya ad (option4)

    Seenekler

    Seenek1:Bu seenek temel uyumluluk iin yaplr. rnein;-O kodu kaplad alan drr ve abuk almasn salar.

    Seenek2 : -Static sistem dinamik balayclar paylalan ktphanelere balamasn salar.

    Seenek3 :-o Bu seenek derlenecek kaynak dosyann ismi ile kta oluacak altrlabilir dosyann isminin farkl olmasn salar.

    Seenek4 : -s Bu seenek btn sembol tablosu ve ynlendirme bilgilerinin temizlenmesini salar (strip seenei).

    Dikkat! Linux ayarlar ve L-Card, varsaylan olarak DLLleri kullanmadndan static eklenmelidir.

    Derleme:

    altrma:

    Hello-cross altrlabilir dosyas L-Card iin derlendii iin Cygwin zerinde altrlamaz. Hello-cross.exe gml sisteme transfer edildikten sonra altrlabilir.

  • 34

    UYGULAMA FAALYET

    Aadaki ilem basamaklarn dikkate alarak gml sistem iin programlama yapnz.

    lem Basamaklar neriler

    C programn yaznz. Uygun bir editr kulannz. sel derleme yapnz. Gcc derleyicisini kullannz.

    apraz derleme yapnz. Faaliyette kullanlan derleyiciyi

    kullannz.

    Program altrnz. Doru olarak alp almadn

    gzleyiniz.

    UYGULAMA FAALYET

  • 35

    LME VE DEERLENDRME

    Aadaki sorular dikkatlice okuyunuz ve doru seenei iaretleyiniz.

    1. Linux komutlarndan dosya sktrma ve amaya yarayan komut aadakilerden hangisidir

    A) Rar B) Zip C) Tar D) D)Gnu

    2. Aadaki komutlardan hangisi ile tm dosya ve klasrler zellikleri ile birlikte listelenir?

    A) ls-al B) Dir C) Ls D) ld

    3. Aadaki komutlardan hangisi bulunulan klasr grmemize yarar?

    A) cd B) Pwd C) Ls D) Cp

    4. Aadaki komutlardan hangisi dosya ieriini grmemizi salar?

    A) term B) Cp C) Cat D) dv

    DEERLENDRME

    Cevaplar Cevaplarnz cevap anahtaryla karlatrnz. Yanl cevap verdiiniz ya da cevap verirken tereddt ettiiniz sorularla ilgili konular faaliyete geri dnerek tekrarlaynz. Cevaplarnzn tm doru ise Modl Deerlendirmeye geiniz.

    LME VE DEERLENDRME

  • 36

    MODL DEERLENDRME Bu modl kapsamnda aada listelenen davranlardan kazandnz becerileri Evet

    ve Hayr kutucuklarna ( X ) iareti koyarak kontrol ediniz.

    Deerlendirme ltleri Evet Hayr

    1. Gml sistemin ne ie yaradn anladnz m?

    2. Linuxun gml sistem stnlklerini anladnz m ?

    3. Gml sistem gelitirme ortamlarn kullandnz m ?

    4. sel ve apraz derleyicilerin farklarn anladnz m ?

    5. Cygwin programn kullandnz m?

    6. FTP sunucu ayarlarn doru olarak yaptnz m ?

    7. Dosya ve dizin komutlarn kullandnz m ?

    8. apraz derleyici kurdunuz mu ?

    DEERLENDRME

    Deerlendirme sonunda Hayr eklindeki cevaplarnz bir daha gzden geiriniz. Kendinizi yeterli grmyorsanz renme faaliyetlerini tekrar ediniz. Btn cevaplarnz Evet ise bir sonraki modle gemek iin retmeninize bavurunuz.

    MODL DEERLENDRME

  • 37

    CEVAP ANAHTARLARI

    RENME FAALYET-1N CEVAP ANAHTARI

    1. sel Derleyici: sel derleyiciler ile kiisel bilgisayarlar iin gerekli olan programlar derlenir, daha sonra yine kiisel bilgisayarlar zerinde yrtlr ya da altrlr.

    2. apraz Derleyici: Yazlan program Host tarafnda yani gelitirme ortamnda derlenir, hata ayklamas yaplr, hedefe yollanr ve altrlr. Cevaplar eer istenmi ise Host tarafna geri dner ve tekrar hata kontrol yaplp ilenir.

    3. FTP kullanc ayarlar: FTP iin kullanc ad ve ifresi verilmelidir. Bylelikle FTP balants yaplabilir.

    4. Rs232 ve TCP IP, balant ayarlarn yapmak iin kullanlabilir. Sonraki uygulamalarda ise TCP IP kullanlabilir.

    RENME FAALYET-2NN CEVAP ANAHTARI

    1. C

    2. A

    3. B

    4. C

    CEVAP ANAHTARLARI

  • 38

    KAYNAKA

    AKDOAN Murat, Endstriyel rn Tasarm Ders Kitab, ETOGM, JICA, 2003

    KAYNAKA