SlideServe
Menu
Préférences
© SlideServe · v2026

Εισαγωγή στο UNIX και άλλα εργαλεία

reuel avatar
16 diapositives · 367 Views · Sep 22, 2014

Εισαγωγή στο UNIX και άλλα εργαλεία. Pedro Trancoso Γιαννάκης Σαζεϊδης. UNIX. Τι είναι; Γιατί UNIX;. UNIX. Δημιούργησε στης αρχές του 70 από τα Bell Labs Παραλλαγές Unix: Linux, AIX, Solaris, Ultrix, Irix, Tru64, FreeBSD Χαρακτηριστικά: Πολλών χρηστών ( multi-user)

Εισαγωγή στο UNIX και άλλα εργαλεία - slide 1
01 / 16Εισαγωγή στο UNIX και άλλα εργαλεία
1 / 17

Télécharger la présentation

Εισαγωγή στο UNIX και άλλα εργαλεία
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Εισαγωγή στο UNIX και άλλα εργαλεία Pedro Trancoso Γιαννάκης Σαζεϊδης

  2. UNIX • Τι είναι; • Γιατί UNIX;

  3. UNIX • Δημιούργησε στης αρχές του 70 από τα Bell Labs • Παραλλαγές Unix: • Linux, AIX, Solaris, Ultrix, Irix, Tru64, FreeBSD • Χαρακτηριστικά: • Πολλών χρηστών (multi-user) • Πολλών εργασιών (multi-tasking)

  4. Χρησιμοποίηση του συστήματος 1 • User account: • Username • Password (αλλαγή του password με την εντολή passwd) • Προσοχή!(1) Το UNIX είναι case-sensitive δηλαδή το username pedro είναι διαφορετικό από Pedro ή PEDRO • Προσοχή!(2) Αλλάξτε password συχνά! • Login και Logout • logout, exit, CTRL-D

  5. Χρησιμοποίηση του συστήματος 2 • Shell (Κέλυφος) • Είναι το πρόγραμμα που διαβάζει τις εντολές του χρήστη, τις ερμηνεύει και ξεκινά τα προγράμματα που θα τις εκτελέσουν • Παραδείγματα: sh, csh, bash, tcsh • Το X: περιβάλλον “windows” • Ξεκινά με xinit • Ανοίγεις “παράθυρα” με xterm&

  6. Οργάνωση Αρχείων • Δέντρο • Ριζικός κατάλογος (root directory): “/” • Κατάλογοι (directories) και υποκατάλογοι (sub-directories) • Βασικές εντολές: • pwd, ls, cd, mkdir, rm, cp, mv, cat, more • Π.Χ.: ls –l • Ειδικοί συμβολισμοί • . Τρέχον κατάλογος (current dir) • .. Κατάλογος που περιέχει τον τρέχον (parent dir) • ~ Κατάλογος του χρήστη (user´s dir) • Π.Χ.: cd ../.. , cd ~/RES • Βοήθεια για τις εντολές:man εντολή

  7. μέγεθος χρηστής όνομα άδειες ομάδα του ημερομηνία Προστασία αρχείων (File Protection) • Αλλάξτε τις άδειες των κατάλογων και αρχείων: chmod • Άδειες: • r (διάβαση), w (γράψιμο), x (εκτέλεση) • u (χρήστης), g (ομάδα), o (υπόλοιποι), a (όλοι) • Π.Χ. >ls –l -rw-r--r-- 1 pedro cs 13710 Apr 16:54 x.c -rw-r--r-- 1 pedro cs 68020 Aug 13:45 x.txt >chmod g+w x.c >ls –l x.c -rw-rw-r-- 1 pedro cs 13710 Apr 16:54 x.c

  8. Επιμελητές • Vi • i (για εισόδου), ESC(για εντολές) • Εντολές: h (αριστερά), l (δεξιά), j (κάτω), k (πάνω) • Εντολές: :w (φύλαξη ), :q (έξοδο), • Emacs • Έχει μενού!

  9. Δημιουργήσει Προγράμματα • Βήματα: • ...Σκεφτείτε για την λύση του προβλήματος... • Γράψτε τον πρόγραμμα σε γλώσσα προγραμματισμού “C”... χρησιμοποιώντας ή το viή to emacs • Μεταφράστε τον πρόγραμμα χρησιμοποιώντας ένα μεταγλωττιστής όπως το ccή το gcc >gcc –o hello hello.c • Εκτελείστε τον πρόγραμμα >hello Hello World! >

  10. Makefiles # # Makefile # CC = gcc CFLAGS = -O3 hello: hello.c $(CC) $(CFLAGS) -o hello hello.c

  11. Makefiles (2) # # Makefile - simulator suite make file # CC = gcc OFLAGS = -O3 OEXT = o BINUTILS_INC = -I../include BINUTILS_LIB = -L../lib CFLAGS = $(OFLAGS) $(BINUTILS_INC) $(BINUTILS_LIB) SRCS = main.c sim-outorder.c memory.c regs.c cache.c \ resource.c endian.c misc.c power.c sgtty.c all: sim-outorder @echo "my work is done here..." sim-outorder: sim-outorder.$(OEXT) cache.$(OEXT) $(CC) -o sim-outorder $(CFLAGS) sim-outorder.$(OEXT) cache.$(OEXT) c.$(OEXT): $(CC) $(CFLAGS) -c $*.c

  12. Shell Scripts #! /bin/csh set APP = hello set OUTPUT = hello.output echo "Running the program" $APP echo "Running the program and redirecting output" $APP > $OUTPUT echo "The End"

  13. $SIM $SIMOPS $APP Q3.sql >& $OUTDIR/q3.out $SIM $SIMOPS $APP Q6.sql >& $OUTDIR/q6.out $SIM $SIMOPS $APP Q12.sql >& $OUTDIR/q12.out Shell Scripts (2) #! /bin/csh # # Variables # set SIM = sim-outorder set SIMOPS = "-cache:dl1 dl1:64:32:4:l" set APP = postgres set OUTDIR = /local/pedro/results set APPX = (q3 q6 q12) set APPINPUT = (Q3.sql Q6.sql Q12.sql) @ i = 1 while ($i <= $#APPX) $SIM $SIMOPS $APP $APPINPUT[$i] >& $OUTDIR/$APPX[$i].out @ i++ end

  14. Perl #!/usr/bin/perl open(INFILE, "w01.out"); while (defined($line = <INFILE>)) { if ($line =~ /^sim_num_insn/) { @part = split(/[ ]+/, $line); $data = @part[1]; } } print "sim_num_insn = " . $data . "\n"; #!/usr/bin/perl open(INFILE, $ARGV[0]); …

  15. Perl (2) #!/usr/bin/perl $path = "."; @tokens = (icache_power, dcache_power, clock_power, sim_num_insn); while (defined($file = <$path/*.out>)) { open(INFILE, $file); while (defined($line = <INFILE>)) { for ( $x = 0; $x <= $#tokens; $x++ ) { if ($line =~ /^@tokens[$x]/) { @part = split(/[ ]+/, $line); @data[$x] = @part[1]; } } } # output results print $file . “\n“; for ( $x = 0; $x <= $#tokens; $x++ ) { print " " . @data[$x]; } print "\n"; }

  16. Bibliography • Links • http://www.cs.ucy.ac.cy/~epl605 • Documentation • http://www.rice.edu/IT/help/documents/ • Makefile • http://www.cs.indiana.edu/classes/c304/Makefiles.html • Shell Scripts • http://www.eng.hawaii.edu/Tutor/csh.html • Perl • http://archive.ncsa.uiuc.edu/General/Training/PerlIntro/