Ahogy írta nem csak kisebb az új kód, de szerinte jó ötlet a legtöbb esetben olvashatatlan assembly programsorokat átlátható C-re cserélni. Linus kérdése az volt, hogy olvasszák be most a munkát, vagy előbb teszteljék az -mm fában és kerüljön bele majd a következő kernelekbe. Andrew Morton jelezte, hogy a patch már egy ideje az -mm fában van, nagy problémát nem okozott, szerinte kész a beolvasztásra. Linus nyugtázta és jelezte, hogy beolvasztja. Bővebben a KernelTrap cikkében.
- A hozzászóláshoz be kell jelentkezni
- 3135 megtekintés
Hozzászólások
már benne van kb két napja és működik
Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.
debian 4.0 - linux-2.6.22-pancs1-wifi0 - 2.6.22 kernel madwifivel itt
- A hozzászóláshoz be kell jelentkezni
Heh, valaki kitalalt valamit, ami jobb, mint a regi valtozata, akadalymentesen el is fogadtak. Igy kene minden ujitasnak mennie. :)
"i pensieri stretti & il viso sciolto." -- Sir Henry Wootton
- A hozzászóláshoz be kell jelentkezni
Heh :-)
H. Peter Anvin nem a valaki kategória. Öreg motorosnak számít.
- A hozzászóláshoz be kell jelentkezni
A valakit nagy V-vel kellett volna irnom :)
"i pensieri stretti & il viso sciolto." -- Sir Henry Wootton
- A hozzászóláshoz be kell jelentkezni
"...legtöbb esetben olvashatatlan assembly programsorokat átlátható C-re cserélni..."
Hehehe... tessék megtanulni olvasni :-) A C-ben leírt dolgokból lesz "valami", pontosabban az, amit a fordító gondol arról, hogy a kóder mit szeretett volna. Az asm-ben meg az van leírva, amit a programozó gondol arról, hogy mit kell csinálni. Ez utóbbihoz persze sokkal több speciális tudás, kell, és a szó leg szorosabb értelmében bitfaragás, de épp ezért jó... A következő meg az lesz, hogy az olvashatatlan C-kódot cseréljük le a jól olvasható (tetszőleges kedvenc) nyelvre...
- A hozzászóláshoz be kell jelentkezni
Ha kicsit utánanéznél mielőtt írsz akkor látnád, hogy H. Peter Anvin nem most látott életében először asm-t.
- A hozzászóláshoz be kell jelentkezni
Ugyanakkor a fordító tudja a generált kódot optimalizálni a megabott platform és beállítások függvényében, az asm-vel ezt nem tudja megtenni. Azért a C nincs olyan messze a gépi kódtól!
- A hozzászóláshoz be kell jelentkezni
Nem a fenet. Asm-nel neuron halo optimalizal, ami tapasztalataim szerint meg mindig jobb, mint barmelyik compiler.
---
pontscho / fresh!mindworkz
- A hozzászóláshoz be kell jelentkezni
hat, ha megfeleloen be van tanitva mar... :)
ha csak epp init() utan all a halo, akkor a compiler leveri, tutira ;))
- A hozzászóláshoz be kell jelentkezni
direkt a nativabb 16bites C->asm miatt van ez a gcc-ben: .code16gcc
Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.
debian 4.0 - linux-2.6.22-pancs1-wifi0 - 2.6.22 kernel madwifivel itt
- A hozzászóláshoz be kell jelentkezni
mért nem egyből javába, az még olvashatóbb (a javásoknak)
- A hozzászóláshoz be kell jelentkezni
Mar vartam az ilyen hozzaszolasokat :D
Letezik meg olyan programozo aki (csak) assembly programozassal keresi a kenyeret?
- A hozzászóláshoz be kell jelentkezni
Igen, csak nem programozónak hívják:)
- A hozzászóláshoz be kell jelentkezni
miert gondolom h nem lattal meg olyan mikrokontrollert amit eleg eselytelen Cben felprogramozni? :)
- A hozzászóláshoz be kell jelentkezni
Ennek ellenére sokan csinálják. :)
-------------------
2.6.21-gentoo-r4
- A hozzászóláshoz be kell jelentkezni
Mindenre a végső válasz a fortran! Az assembly is lefordítható fortran nyelvre!
:DDDD
--
Kinek nem inge, ne vegye gatyára
- A hozzászóláshoz be kell jelentkezni
Viszont az igazi programozo akarmilyen nyelven is tud fortran programokat irni... :)
--
Fontos feladatot soha ne bizz olyan gepre, amit egyedul is fel tudsz emelni!
- A hozzászóláshoz be kell jelentkezni
Chuck Norris is tud akármilyen nyelven akármilyen programot írni! :)
"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."
- A hozzászóláshoz be kell jelentkezni
Hahó!
Az idézet pontosan így szól:
"Amit nem lehet megcsinálni FORTRAN-ban, azt meg lehet csinálni assemblyben. Amit nem lehet megcsinálni assemblyben, azt nem lehet megcsinálni."
(Forrás:
http://www.cab.u-szeged.hu/local/doc/UNIX/orlando/igazi.html
)
- A hozzászóláshoz be kell jelentkezni
"Egyébként az igazi programozó akármilyen nyelvben is bír FORTRAN programokat írni."
- A hozzászóláshoz be kell jelentkezni
ez az a kód, amit egykor maga Linus írt - többé-kevésbé?
- A hozzászóláshoz be kell jelentkezni
igen ez az x86-os bootstrap kódja,
arch/i386/boot/boot.h:
* Copyright (C) 1991, 1992 Linus Torvalds
* Copyright 2007 rPath, Inc. - All Rights Reserved
Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.
debian 4.0 - linux-2.6.22-pancs1-wifi0 - 2.6.22 kernel madwifivel itt
- A hozzászóláshoz be kell jelentkezni
Az olvashatóságon kívül van valami komolyabb oka a cserének? Véleményem szerint ha valami asm-ben lett megírva, annak oka van/volt.
- A hozzászóláshoz be kell jelentkezni
szerintem a különböző virtualizációs megoldások miatt, pl xen, paravirt és kvm. ha jól tudom akkor a xen a 2.6.23-ban fog megjelenni
Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.
debian 4.0 - linux-2.6.22-pancs1-wifi0 - 2.6.22 kernel madwifivel itt
- A hozzászóláshoz be kell jelentkezni
ha jól tudom akkor a xen a 2.6.23-ban fog megjelenni
erre valami autentikus forrast megkoszonnek...
- A hozzászóláshoz be kell jelentkezni
-mm tervek között szerepelt és fenn vagyok a kernel-devel listán
http://lkml.org/lkml/2007/7/17/22
Hi Linus,
The following changes since commit a5fcaa210626a79465321e344c91a6a7dc3881fa:
Linus Torvalds (1):
Merge branch 'drm-patches' of ssh://master.kernel.org/.../airlied/drm-2.6
are available in the git repository at:
ssh://master.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git xen-upstream
Thanks,
J
Jeremy Fitzhardinge (44):
add kstrndup
add argv_split()
usermodehelper: split setup from execution
Add common orderly_poweroff()
usermodehelper: Tidy up waiting
use elfnote.h to generate vsyscall notes.
paravirt: add an "mm" argument to alloc_pt
paravirt: add a hook for once the allocator is ready
paravirt: increase IRQ limit
paravirt: unstatic leave_mm
paravirt: unstatic smp_store_cpu_info
paravirt: make siblingmap functions visible
paravirt: export __supported_pte_mask
Allocate and free vmalloc areas
paravirt: helper to disable all IO space
Add a sched_clock paravirt_op
Add nosegneg capability to the vsyscall page notes
xen: Add Xen interface header files
xen: Core Xen implementation
xen: virtual mmu
xen: event channels
xen: time implementation
xen: configuration
xen: add pinned page flag
xen: Complete pagetable pinning
xen: ignore RW mapping of RO pages in pagetable_init
xen: Account for stolen time
xen: Implement sched_clock
xen: SMP guest support
xen: Add support for preemption
xen: lazy-mmu operations
xen: hack to prevent bad segment register reload
xen: use the hvc console infrastructure for Xen console
xen: Add grant table support
xen: add the Xenbus sysfs and virtual device hotplug driver
xen: add virtual block device driver.
xen: add virtual network device driver
xen: machine operations
xen: handle external requests for shutdown, reboot and sysrq
xen: Place vcpu_info structure into per-cpu memory
xen: Attempt to patch inline versions of common operations
xen: suppress abs symbol warnings for unused reloc pointers
xen: use iret directly when possible
xen: disable all non-virtual drivers
Nekem mindig igazam van, ha nem, akkor nincs igazam, szoval megint igazam van hogy nincs igazam.
debian 4.0 - linux-2.6.22-pancs1-wifi0 - 2.6.22 kernel madwifivel itt
- A hozzászóláshoz be kell jelentkezni
ugy legyen, nagyon varom mar a xent a vanilla kernelbe.
- A hozzászóláshoz be kell jelentkezni
Amikor meg Linus irta ezt a kodot valoszinuleg nem lehetett megvalositani C-ben. Olyan gcc feature-t hasznal ami csak 2001 ota elerheto (.code16gcc).
Mellesleg a mostani kod is hasznal szerintem sok beagyazott asm kodot.
- A hozzászóláshoz be kell jelentkezni