wtorek, 3 listopada 2015

Bazy Danych

1) Definicja
2) Przykładowe zastosowania BD
3) Typy BD
    -kartotekowe
    -relacyjne
4) Struktura BD
    -tabele
    -rekordy, pola
    -klucze
    -relacje
5) Systemy obsługi BD

czwartek, 4 września 2014

ALGORYTM

1) DEFINICJA ALGORYTMU - Algorytm jest przepisem opisującym krok po kroku rozwiązanie problemu lub osiągnięcie jakiegoś celu.

    Przykład :
    Algorytm gotowania jajka na miękko.

        1. Włóż jajko do gotującej się wody.
         2. Zanotuj czas początkowy t0.
         3. Oczytaj czas aktualny t.
         4. Oblicz D t = t - t0.
         5. Jeśli D t < 3 min., to przejdź do kroku 3.
         6. Wyjmij jajko z gotującej się wody. Zakończ algorytm.

2) RODZAJE ALGORYTMÓW :
    - LINIOWE :

    Algorytm liniowy to taki, w którym nie określono żadnych warunków. Jest też nazywany sekwencyjnym,       gdyż każdy z kroków w tym algorytmie następuje sekwencyjnie, czyli wykonanie jednej sekwencji powoduje     przejście bezpośrednio do następnej.

    Przykład :
    Algorytm liniowy w postaci listy kroków – obliczanie obwodu prostokąta

    Dane: bok a i b
    Lista kroków:
    1. Początek algorytmu
    2. Podaj bok a
    3. Podaj bok b
    4. oblicz obwód: ob:=2*a+2*b
    5. Wyprowadź wartość ob
    6. Koniec algorytmu

    - WARUNKOWE :

  Algorytm warunkowy to taki, w którym wykonanie instrukcji uzależnione jest od spełnienia lub          niespełnienia warunku.

  Przykład :
  Algorytm warunkowy w postaci listy kroków – obliczanie obwodu prostokąta

    Dane: bok a i b
    Lista kroków:
    1. Początek algorytmu
    2. Podaj bok a
    3. Podaj bok b
    4. Czy bok a>0?
       jeśli tak idź do kroku 5,
       jeśli nie podaj komunikat wyjściowy: "nie można obliczyć obwodu" i zakończ algorytm.
    5. Czy bok b>0?
       jeśli tak idź do kroku 6
       jeśli nie podaj komunikat wyjściowy: "nie można obliczyć obwodu" i zakończ algorytm.
    6. Oblicz obwód Ob:=2*a+2*b
    7. Wyprowadź wartość Ob
    6. Koniec algorytmu

    - ITERACYJNE :

   Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został              spełniony.

Iteracje mogą być realizowane : powtarzanie instrukcji aż zostanie spełniony warunek. Ten rodzaj pętli jest nazywany do while i również ma zastosowanie w wielu językach programowania;
  1. konkretną ilość razy (pętla z licznikiem). Ten rodzaj pętli jest nazywany for i ma zastosowanie w wielu językach programowania;
  2. spełnianie warunku tak długo aż zostanie spełniony. Wówczas następuje przejście do instrukcji. Ten rodzaj pętli jest nazywany while do.

    - REKURENCYJNE

Algorytm rekurencyjny to taki, który wywołuje sam siebie do rozwiązania tego samego problemu. Algorytm rekurencyjny jest często realizacją zasady “dziel i zwyciężaj”, która składa się z trzech kroków:

    1) “dzielenia”, tj. podziału problemu na podproblemy;

    2) rekurencyjnego rozwiązania podproblemów, chyba że można je rozwiązać metodą bezpośrednią –           takie postępowanie prowadzi do “zwycięstwa” w sensie czasu rozwiązywania problemu;

    3) “połączenia” rozwiązań podproblemów w rozwiązanie całego problemu.

 Przykłady algorytmów rekurencyjnych: sortowanie przez scalanie, algorytm euklidesa.
    
    Algorytm Euklidesa, postępowanie, którego celem jest znalezienie największej wspólnej miary dwóch   odcinków o długości m i n (lub największego wspólnego dzielnika dwóch liczb m i n). Krótszy z odcinków   (np. n) odkłada się na dłuższym m tyle razy (czyli dzieli się m przez n), aż resztę stanowi odcinek         r1 mniejszy od odcinka n (jeśli reszta jest równa zero, to problem jest już rozwiązany). Następnie odcinek r1 odkłada się na n tyle razy, by otrzymać resztę r2 mniejszą od r1. Jeśli r2 = 0, to r1 jest poszukiwaną wspólną miarą. Jeśli r2 nie równa się 0, to z kolei odkłada się r2 na r1 itd., aż otrzymana reszta rn = 0. Wówczas reszta rn-1 jest poszukiwaną wspólną miarą (lub dzielnikiem).

3) SPOSOBY REPREZENTOWANIA ALGORYTMU :

    - LISTA KROKÓW :

Lista kroków algorytmu jest to przedstawienie w numerowanych punktach kolejnych etapów działania algorytmu.
Jeden punkt zawiera opis jednej operacji. Kolejności wykonywania operacji musi zostać zachowana. W przypadku wykonania jakiejś czynności wielokrotnie (iteracje, itp.) lub w przypadku chęci przejścia do konkretnego punktu z listy, umieszczamy w danym punkcje informację "Przejdź do punktu X", gdzie X, to numer punktu docelowego.
Pierwszy i ostatni punkt listy kroków algorytmu, to zawsze: początek algorytmu oraz koniec algorytmu.
Wszelkie operacje przypisania wartości do zmiennej dokonujemy za pomocą operatora ":=".

Przykład:
1. Początek algorytmu. 
2. Ustaw wartość zmiennej a:=0
3. Jeżeli a > 3 przejdź do punktu 7.
4. Wykonaj wyrażenie a:=a+1
5. Wypisz na ekran wartość a
6. Przejdź do punktu 3.
7. Zakończ algorytm.

    - SCHEMAT BLOKOWY :

Schemat blokowy  jest narzędziem nakierowanym na prezentację kolejnych czynności w projektowanym algorytmie. Realizowane jako diagram, na którym procedura, system albo program komputerowy są reprezentowane przez opisane figury geometryczne, połączone liniami zgodnie z kolejnością wykonywania czynności wynikających z przyjętego algorytmu rozwiązania zadania.
Cechuje je:
  • zasada budowy,
  • elastyczność zapisów,
  • możliwość zapisu z użyciem składu wybranego języka programowania,
  • łatwa kontrola poprawności algorytmu.
Schematy blokowe pozwalają na prostą zamianę instrukcji na instrukcje programu komputerowego.

Przykład :
 
     - DRZEWA ALGORYTMICZNE :

Drzewo  jest hierarchiczną strukturą danych, którą współczesna informatyka wykorzystuje bardzo często. Nie szukając daleko, katalogi i pliki są zorganizowane na twoim komputerze właśnie w strukturze drzewa. Zastosowań drzew jest całe mnóstwo, dlatego uczeń informatyki powinien dobrze poznać te struktury danych. Mam nadzieję, że informacje zawarte w tym rozdziale okażą się pomocne w osiągnięciu tego celu.

Przykład :




    - PSEUDOKOD :

    Pseudokodem nazywany jest taki sposób zapisu algorytmu, który, zachowując strukturę                charakterystyczną dla kodu zapisanego w języku programowania, rezygnuje ze ścisłych      reguł składniowych na rzecz prostoty i czytelności.

 Przykład : 
jeżeli numer karty kredytowej jest ważny to
    wykonanie transakcji w oparciu o numer karty i zamówienie 
w przeciwnym razie
    wyświetlenie wiadomości o niepowodzeniu
koniec warunku

    - KOD WŁAŚCIWY :

Jest to kod, który można poddać procesowi translacji (kompilacja lub interpretacja).


Przykład : 



niedziela, 16 marca 2014

Konfiguracja komputera do pracy w sieci


  •  Wiersz poleceń (ang. Command Line InterfaceCLI) – jeden z najczęściej spotykanych sposobów interakcji człowieka z komputerem. Wiersz poleceń to także program systemu Windows. Można otworzyć go przez wpisanie w funkcji uruchom polecenia cmd (Windows XP) lub wprowadzenie w funkcji wyszukaj programy i pliki nazwy cmd.exe (Windows 7).
  •  ipconfig - polecenie w systemach operacyjnych Microsoft Windows służące do wyświetlania konfiguracji interfejsów sieciowych. Zwalnia i aktualizuje dzierżawy DHCP oraz wyświetla, rejestruje i usuwa nazwy DNS. Narzędzie pomocne przy wykrywaniu błędnego adresu IP, maski podsieci lub bramy domyślnej. Odpowiednik w systemach UNIX to ifconfig.
  •  DHCP (ang. Dynamic Host Configuration Protocol – protokół dynamicznego konfigurowania węzłów) – protokół komunikacyjny umożliwiający komputerom uzyskanie od serwera danych konfiguracyjnych, np. adresu IP hosta, adresu IP bramy sieciowej, adresu serwera DNS, maski podsieci. Protokół DHCP jest zdefiniowany w RFC 2131 i jest następcą BOOTP. DHCP został opublikowany jako standard w roku 1993. 
  •  Adres ip (ang. IP address) – w protokole IP liczba nadawana interfejsowi sieciowemu, grupie interfejsów (broadcast, multicast), bądź całej sieci komputerowej, służąca identyfikacji elementów sieci w warstwie trzeciej modelu OSI – w obrębie sieci lokalnej oraz poza nią (tzw. adres publiczny).
  •  Maska podsieci (ang. subnetwork maskaddress mask) – liczba służąca do wyodrębnienia w adresie IP części sieciowej od części hosta.
  •  Brama domyślna - router, który potrafi poprawnie przekazać dalej pakiet przychodzący do niej, a skierowany do sieci odległej. Drogę przekazywanego pakietu wyznacza na podstawie swojej tablicy routingów. Routerem może być: komputer z systemem umożliwiającym przekazywanie, czyli routowanie pakietów pomiędzy sieciami.

wtorek, 4 marca 2014

Sieć komputerowa



Sieć komputerowa - grupa kilku komputerów połączonych ze sobą za pomocą dowolnego medium transmisyjnego w celu wymiany danych i współdzielenia zasobów sieciowych.




Główne zalety sieci komputerowych :
-  możliwość komunikacji z innymi osobami (np. poprzez wiadomość e-mail)

-  możliwość korzystania z wspólnych zasobów sieciowych (sprzętu, oprogramowania), dzięki czemu nie ma potrzeby kupowania wielu urządzeń i programów osobno dla każdego komputera

 szybkość, oszczędność czasu i bezproblemowość w przenoszeniu danych, plików i programów z jednego komputera na inny (nawet znajdujący się w drugim końcu świata)

-  oszczędność w zakupie oprogramowania (pewne programy np. firewall wystarczy zainstalować na jednym komputerze)

 bezkonfliktowość, prostota i wygoda podczas dostępu do wspólnych bazy danych z różnych komputerów (nawet jak znajdują się one w innych częściach świata)

Główne wady sieci komputerowych :
wysokie ceny urządzeń sieciowych i medium transmisyjnych

-  zagrożenia związane z działaniem „sieciowych włamywaczy”, hakerów (np. usunięcie danych, uszkodzenie systemu)

 problemy związane z tworzeniem i zarządzaniem sieci (np. zakłócenia, awarie, podłączanie wszystkich urządzeń i zasobów sieciowych kablami)

 zagrożenia bezpieczeństwa i stabilności działania wszystkich systemów w wyniku zainfekowania jednego komputera

 awaria jednego urządzenia lub medium transmisyjnego może spowodować uszkodzenie całej sieci komputerowej


Urządzenia sieciowe :
  Karta sieciowa

 Koncentrator (Hub)


 Przełącznik (Switch)


 Router


 Access Point


 Wtórnik (Repeater)


 Bridge


Rodzaje medium transmisyjnego :

- kabel RJ45 (Skrętka)


- kabel koncentryczny


- światłowód


- fale radiowe


Topologia magistrali :

 wszystkie elementy sieci są podłączone do jednego kabla 

(magistrali);

 wymaga zastosowania tzw. terminatorów chroniących przed 

obijaniem sygnałów;

 przerwanie medium w jednym miejscu powoduje awarię całej sieci;





Topologia gwiazdy :

 wszystkie komputery są połączone do jednego punktu – koncentratora lub przełącznika;

 każdy komputer może uzyskać bezpośredni i 
niezależny dostęp do nośnika;


Topologia pierścieniowa :

 każdy przyłączony 
komputer ma dwa połączenia - po jednym dla sąsiednich komputerów, dzięki czemu tworzy się fizyczna pętla;

 dane przesyłane są w jedną stronę;

 dany komputer odpowiada na pakiety do niej zaadresowane, a także przesyła dalej pozostałe pakiety;


Podział sieci ze względu na jej organizację :

 Klient – serwer 

 - w sieci występuje serwer, który odgrywa nadrzędną 

rolę i nadzoruje całą sieć.


Peer-to-Peer (P2P) 

 - wszystkie komputery mają jednakowe uprawnienia, 

sieć posiada płynną strukturę.


Podział sieci komputerowych ze względu na zasięg działania : 

  LAN (Local Area Network) – lokalna sieć 

komputerowa, obejmująca zazwyczaj 

tylko jeden budynek;


 MAN (Metropolitan Area Network) – sieć 

obejmująca aglomerację lub miasto;



 WAN (Wide Area Network) – obejmuje 

zasięgiem duży obszar (państwo, 

kontynent);




 Internet – ogólnoświatowa sieć 

komputerowa;


 - jest logicznie połączony w jednorodną 

sieć adresową opartą na protokole IP 

(Internet Protocol);

- umożliwia wymianę danych pomiędzy 

komputerami na całym świecie;

- nie posiada jednego, centralnego 

komputera zarządzającego całą siecią, 

lecz składa się z wieluset różnych sieci;

wtorek, 3 grudnia 2013

Budowa komputera PC

Jak zbudować komputer PC od podstaw krok po kroku : 
 

Płyta główna

Płyta główna (ang. motherboard, mainboard) – obwód drukowany urządzenia elektronicznego, na którym montuje się najważniejsze elementy, umożliwiając komunikację wszystkim pozostałym komponentom i modułom.
W komputerze na płycie głównej znajdują się: procesor/y, pamięć operacyjna lub gniazda do zainstalowania tych urządzeń oraz gniazda do zainstalowania dodatkowych płyt zwanych kartami rozszerzającymi (np. PCI), oraz gniazda do urządzeń składujących (dyski twarde, napędy optyczne itp.), złącze klawiatury i zasilacza. W niektórych konstrukcjach także gniazda do innych urządzeń zewnętrznych do których sprzęt znajduje się na płycie głównej (port szeregowy, port równoległy, USB).
Koncepcję zbudowania komputera osobistego wyposażonego tylko w minimum potrzebnych urządzeń zmontowanych na jednej płycie drukowanej oraz gniazd, do których podłącza się dodatkowe urządzenia zapoczątkowała firma IBM wprowadzając komputer osobisty, zwany też PC.

Plik:AsusP4PE MainboardSocket478.jpg 

Plik:ASRock K7VT4A Pro Mainboard.jpg 

Plik:VIA Mini-ITX Form Factor Comparison.jpg

Procesor (ang. processor), także CPU (ang. Central Processing Unit) – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.

Procesory (zwane mikroprocesorami) wykonywane są zwykle jako układy scalone zamknięte w hermetycznej obudowie, często posiadającej złocone wyprowadzenia (stosowane ze względu na odporność na utlenianie). Ich sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych, tworzących, w zależności od zastosowania, sieć od kilku tysięcy do kilkuset milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź).

Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma 64 bity, mówimy, że procesor jest 64-bitowy.
Innym ważnym parametrem określającym procesor jest szybkość, z jaką wykonuje on rozkazy. Przy danej architekturze procesora, szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu.

Plik:Suoritin Intel Pentium 100MHz.jpg

Plik:Intel core i7 940 bottom R7309480 wp.jpg 

Pomieszczenie wysokiej czystości w fabryce procesorów :

Plik:Clean room.jpg 

Pamięć operacyjna (ang. internal memory, primary storage) – pamięć adresowana i dostępna bezpośrednio przez procesor, a nie przez urządzenia wejścia-wyjścia procesora. W pamięci tej mogą być umieszczane rozkazy (kody operacji) procesora (program) dostępne bezpośrednio przez procesor i stąd nazwa pamięć operacyjna. W Polsce często pamięć ta jest utożsamiana z pamięcią RAM, choć jest to zawężenie pojęcia, pamięcią operacyjną jest też pamięć nieulotna (ROM, EPROM i inne jej odmiany) dostępna bezpośrednio przez procesor, a dawniej używano pamięci o dostępie cyklicznym.
Obecnie pamięci operacyjne są wyłącznie pamięciami elektronicznymi, dawniej używano innych np. pamięci ferrytowych.

W obecnych komputerach głównym rodzajem pamięci operacyjnej jest pamięć RAM, wykonana jako układy elektroniczne, wykorzystywana przez komputer do przechowywania programu i danych podczas jego pracy.

Plik:Computer storage types.svg

Dysk twardy, napęd dysku twardego (ang. hard disk drive) – rodzaj pamięci masowej, wykorzystujący nośnik magnetyczny do przechowywania danych. Nazwa "dysk twardy" wynika z zastosowania twardego materiału jako podłoża dla właściwego nośnika, w odróżnieniu od dyskietek (ang. floppy disk, czyli miękki dysk), w których nośnik magnetyczny naniesiono na podłoże elastyczne.

Pierwowzorem twardego dysku jest pamięć bębnowa. Pierwsze dyski twarde takie, jak dzisiaj znamy, wyprodukowała w 1980 roku firma Seagate – był przeznaczony do mikrokomputerów, miał pojemność 5 MB, czyli 5 razy więcej niż ówczesna, dwustronna dyskietka 8-calowa.

Pojemność dysków wynosi od 5 MB (przez 10 MB, 20 MB i 40 MB – dyski MFM w komputerach klasy XT 808x i 286) do 4 TB (w laptopach 20-1000 GB). Opracowano również miniaturowe dyski twarde typu Microdrive, o pojemnościach od kilkuset MB do kilku GB, przeznaczone dla cyfrowych aparatów fotograficznych i innych urządzeń przenośnych.

Dla dysków twardych najważniejsze są następujące parametry: pojemność, szybkość transmisji danych, czas dostępu do danych, prędkość obrotowa dysków magnetycznych (obr/min.) oraz średni czas bezawaryjnej pracy (MTBF).
Kilka dysków twardych można łączyć w macierz dyskową, dzięki czemu można zwiększyć niezawodność przechowywania danych, dostępną przestrzeń na dane, zwiększyć szybkość odczytu/zapisu.

Plik:Hard disk WD 400.jpg

Plik:Hard Disks 35 AND 25.png 

Plik:SixHardDriveFormFactors.jpg

Dysk optyczny to jeden z rodzajów nośników informacji używany w systemach komputerowych do zapisu danych. Dysk optyczny jest płaskim, plastikowym krążkiem pokrytym materiałem, na którym mogą być zapisywane bity informacji w postaci fragmentów dobrze i słabo odbijających wiązkę światła. Odczyt danych następuje poprzez oświetlenie promieniem lasera. Dane są zapisane sekwencyjnie na ciągłej, spiralnej ścieżce od środka dysku na zewnątrz.

Pierwsze dyski optyczne zapisujące analogowo wideo (Laserdisc) zostały wynalezione przez firmę Philips w latach 60. XX wieku i wprowadzone na rynek (w latach 70.) w kooperacji z firmą MCA. Zgromadzone doświadczenie umożliwiło wyprodukowanie CD-ROMów na początku lat 80. (Philips w kooperacji z Sony).
Do pamięci optycznych zalicza się:
  • Laserdisc
  • CD
  • DVD
  • Blu-ray
  • HD DVD
  • HD VMD
  • UMD
  • Minidisc
  • GD-ROM

 


 

Zasilacz – urządzenie służące do dopasowania dostępnego napięcia do wymagań zasilanego urządzenia. Ze względu na sposób zmiany wielkości napięcia wyróżnić można:
  • zasilacze transformatorowe, w których elementem dopasowującym jest transformator
  • zasilacze beztransformatorowe dopasowujące napięcie przy użyciu różnego rodzaju układów elektronicznych
Ze względu na jakość napięcia wyjściowego wyróżnia się:
  • zasilacze stabilizowane, w których napięcie utrzymywane jest na stałym poziomie, niezależnie od fluktuacji prądu
  • zasilacze niestabilizowane, w których napięcie na wyjściu może ulegać zmianie, zależnie od fluktuacji prądu
Zasilacze budowane są jako uniwersalne lub specjalizowane do konkretnych zastosowań, np.:
  • zasilacz komputera


 


Port szeregowy (ang. Serial Port) – port komputerowy, przez który dane są przekazywane w formie jednego ciągu bitów. Port ten jest zwykle zaopatrzony w specjalny układ o nazwie UART, który tłumaczy ciągi bitów na bajty i na odwrót.

Komputery klasy PC mają zwykle kilka portów szeregowych – jeden lub dwa porty RS-232, dwa złącza PS/2 i kilka portów USB. Komputery przenośne są także często wyposażone w port podczerwieni. Porty szeregowe w komputerze wykorzystuje się zwykle do podłączania "strumieniowych" urządzeń zewnętrznych takich jak myszy, klawiatury, modemy, urządzenia pomiarowe. Ze względu na prostszą synchronizację niż w przypadku portu równoległego, porty szeregowe w praktyce osiągają większe przepustowości. Teoretyczna przepustowość portów równoległych jest większa, ponieważ nie istnieje ograniczenie ilości równolegle wykorzystywanych linii sygnałowych.

Port szeregowy jest często błędnie utożsamiany z magistralą RS-232 ponieważ komputery PC początkowo posiadały zewnętrzne porty szeregowe z RS-232.

Plik:RS-232.jpeg

Plik:Type A USB connector.jpg 

Port równoległy (ang. Parallel Port) – port w technice komputerowej, w którym dane są przesyłane jednocześnie kilkoma przewodami, z których każdy przenosi jeden bit informacji. Przeciwieństwem portu równoległego jest port szeregowy.

W komputerach klasy PC używa się kilku rodzajów portów równoległych. Najbardziej znanym jest port o standardzie Centronics (LPT) przesyłający jednocześnie 8 bitów danych. Został on zaprojektowany do przesyłania danych między komputerem a drukarką. Innymi portami równoległymi są SCSI i ATA.
Jako że port Centronics jest najczęściej jedynym portem równoległym wyprowadzanym na zewnątrz komputera klasy PC, port równoległy jest z nim błędnie utożsamiany.


Universal Serial Bus, USB, uniwersalna magistrala szeregowa – rodzaj sprzętowego portu komunikacyjnego komputerów, zastępującego stare porty szeregowe i porty równoległe. Został opracowany przez firmy Microsoft, Intel, Compaq, IBM i DEC.

Port USB jest uniwersalny w tym sensie, że można go wykorzystać do podłączenia do komputera wielu różnych urządzeń (np.: kamery wideo, aparatu fotograficznego, telefonu komórkowego, modemu, skanera, klawiatury, przenośnej pamięci itp). Urządzenia podłączane w ten sposób mogą być automatycznie wykrywane i rozpoznawane przez system, przez co instalacja sterowników i konfiguracja odbywa się w dużym stopniu automatycznie (przy starszych typach szyn użytkownik musiał bezpośrednio wprowadzić do systemu informacje o rodzaju i modelu urządzenia). Możliwe jest także podłączanie i odłączanie urządzeń bez konieczności wyłączania czy ponownego uruchamiania komputera.

Większość współczesnych systemów operacyjnych obsługuje złącze USB – dotyczy to m.in. systemów firmy Microsoft zaczynając od Windows 95 w wersji OSR2 (istnieje także poprawka do wersji OSR1 udostępniająca obsługę USB), systemów Windows z rodziny NT (od wersji 5.0), systemów opartych na jądrze Linux, systemów z rodziny BSD oraz Mac OS.

Plik:USB Type A Plug BW.svg

Plik:Usb-svg.svg 

Plik:Types-usb new.svg